IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類(lèi)|軟件專(zhuān)題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置:首頁(yè)數(shù)據(jù)庫(kù)Oracle → 手工備份恢復(fù)--LogMiner

手工備份恢復(fù)--LogMiner

時(shí)間:2015/6/28來(lái)源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評(píng)論(0)

在以前的練習(xí)中,我們討論了歸檔重做日志文件,對(duì)歸檔重做日志文件進(jìn)行了備份并用于恢復(fù)操作,利用這些文件可以把改變傳遞到一個(gè)備用數(shù)據(jù)庫(kù)中并將一個(gè)表空間及時(shí)恢復(fù)到一個(gè)特定的時(shí)間點(diǎn)。你是否考慮到什么方法可以直接觀察一個(gè)oracle重做日志文件的內(nèi)部結(jié)構(gòu)?從Oracle8i開(kāi)始可以是用LogMiner工具查看一個(gè)或者多個(gè)日志文件的內(nèi)容,包括一些數(shù)據(jù)字典視圖和存儲(chǔ)過(guò)程。在本練習(xí)中將練習(xí)安裝LogMiner,并使用LogMiner來(lái)查看和分析數(shù)據(jù)庫(kù)重做日志文件的內(nèi)容。
當(dāng)Oracle改變數(shù)據(jù)塊時(shí),它把重做信息寫(xiě)入當(dāng)前的聯(lián)機(jī)重做日志文件。重做日志文件包括更改時(shí)間、對(duì)象標(biāo)識(shí)符、更改的SCN號(hào)、數(shù)據(jù)塊發(fā)生的操作和其他的重要信息,該文件不但包括使用者對(duì)數(shù)據(jù)塊所做的更改,也包括回退段中恢復(fù)塊的更改。Oracle在數(shù)據(jù)字典中使用數(shù)字標(biāo)識(shí)符來(lái)標(biāo)識(shí)對(duì)象的相關(guān)信息,例如為一個(gè)表制定一個(gè)對(duì)象號(hào),并且每列有一個(gè)列標(biāo)志符,每列都有一個(gè)相應(yīng)的數(shù)據(jù)類(lèi)型標(biāo)識(shí)符,表示該列是varchar2、date、number等變量。使用LogMiner,可以讀出重做文件的內(nèi)容,然后重新產(chǎn)生或恢復(fù)產(chǎn)生原始重做信息的SQL表達(dá)式,使用數(shù)據(jù)字典文件,LogMiner將Oracle對(duì)象標(biāo)識(shí)符翻譯成可以看得懂的表和列。
在進(jìn)行本練習(xí)之前對(duì)相關(guān)數(shù)據(jù)進(jìn)行解釋?zhuān)?/p>

  • 當(dāng)前數(shù)據(jù)庫(kù)(Current database):當(dāng)LogMiner使用產(chǎn)生日志文件的服務(wù)器來(lái)分析重做日志文件時(shí),重做日志文件來(lái)自當(dāng)前數(shù)據(jù)庫(kù);
  • 外部數(shù)據(jù)庫(kù)(Foreign database):當(dāng)LogMiner可以分析異于當(dāng)前數(shù)據(jù)庫(kù)的其他數(shù)據(jù)庫(kù)產(chǎn)生的重做日志文件,該數(shù)據(jù)庫(kù)就是有一個(gè)外部數(shù)據(jù)庫(kù);
  • 字典文件(Dictionary file):LogMiner使用字典文件將Oracle內(nèi)部對(duì)象標(biāo)識(shí)與表名稱、列、數(shù)據(jù)類(lèi)型以及其他對(duì)象關(guān)聯(lián)起來(lái),需要注意的是字典文件必須由創(chuàng)建重做日志文件的數(shù)據(jù)庫(kù)產(chǎn)生。

很多情況下需要使用LogMiner:如數(shù)據(jù)庫(kù)表中的數(shù)據(jù)莫名其妙被修改了,使用LogMiner可以檢查哪個(gè)改變的運(yùn)行細(xì)節(jié),也可以使用LogMiner來(lái)撤銷(xiāo)這些更改;可以使用LogMiner檢查一個(gè)或多個(gè)表中SQL改變發(fā)生的次數(shù),從而檢查表上的工作量;通過(guò)進(jìn)一步檢查,LogMiner可以指出一個(gè)錯(cuò)誤的DROP TABLE或者一個(gè)DDL語(yǔ)句發(fā)生的準(zhǔn)確時(shí)間和SCN。
使用LogMiner需要理解以下要點(diǎn):

  • 可以在一個(gè)已經(jīng)加載或者未加載的數(shù)據(jù)庫(kù)上使用LogMiner;
  • 分析一個(gè)來(lái)自外來(lái)數(shù)據(jù)庫(kù)重做日志文件時(shí),當(dāng)前數(shù)據(jù)庫(kù)的塊大小必須和外部數(shù)據(jù)庫(kù)一樣的或者更大,因?yàn)樵跓醾浞菽J,表空間中一個(gè)塊的首次改變作為一個(gè)單獨(dú)的重做記錄在重做流中創(chuàng)建一個(gè)完整的鏡像。如果LogMiner使用較小的塊尺寸的數(shù)據(jù)庫(kù)讀取重做會(huì)發(fā)生錯(cuò)誤,因?yàn)閱为?dú)的重做記錄無(wú)法放入一個(gè)塊中;
  • 雖然LogMiner不解釋重做日志的DDL語(yǔ)句,如DROP TABLE這樣的DDL語(yǔ)句,但仍舊會(huì)在數(shù)據(jù)字典創(chuàng)建DML,這些字典DML語(yǔ)句可以用來(lái)檢查對(duì)數(shù)據(jù)庫(kù)發(fā)布的DDL命令;
  • LogMiner不會(huì)重構(gòu)原始的無(wú)日志的SQL操作,但在數(shù)據(jù)字典上的DML操作結(jié)果將記錄到日志文件里;
  • 雖然LogMiner可以偶然用來(lái)日志文件分析,但不能當(dāng)做常規(guī)意義上使用的一種功能,特別是一個(gè)產(chǎn)生龐大數(shù)量重做信息的數(shù)據(jù)庫(kù)挖掘重做信息,使用LogMiner分析龐大數(shù)量的重做信息是一件非常耗費(fèi)時(shí)間的事情;
  • 如果LogMiner用來(lái)從其他數(shù)據(jù)庫(kù)的日志文件里挖掘信息,無(wú)論原數(shù)據(jù)庫(kù)還是被分析的數(shù)據(jù)庫(kù)都必須在使用相同的硬件平臺(tái)和操作系統(tǒng),而且原數(shù)據(jù)庫(kù)和被分析數(shù)據(jù)庫(kù)必須使用相同的字符集;
  • LogMiner無(wú)法分析某些數(shù)據(jù)庫(kù)對(duì)象或數(shù)據(jù)類(lèi)型產(chǎn)生的重做,例如:按索引組織的表、成簇的表/索引、非標(biāo)量數(shù)據(jù)類(lèi)型和鏈接的行;
  • 盡管可以創(chuàng)建數(shù)據(jù)字典DML,但LogMiner無(wú)法從直接的路徑插入操作中生成原始的SQL;
  • LogMiner將顯示為提交的事務(wù),因?yàn)橹刈鋈罩景峤坏暮臀刺峤坏臄?shù)據(jù)。

 練習(xí)18:分析重做文件

通過(guò)LogMiner讀取重做日志事務(wù)涉及使用Oracle提供的包過(guò)程、數(shù)據(jù)字典視圖和一個(gè)數(shù)據(jù)字典外部文件。下面是應(yīng)用LogMiner分析重做日志文件的操作過(guò)程:使用LogMiner存儲(chǔ)過(guò)程創(chuàng)建一個(gè)外部數(shù)據(jù)字典文件;然后使用另一個(gè)存儲(chǔ)過(guò)程創(chuàng)建一個(gè)分析重做文件的列表;最后,執(zhí)行另一個(gè)存儲(chǔ)過(guò)程來(lái)啟動(dòng)LogMiner。在完成這些步驟以后,從一個(gè)顯示日志文件內(nèi)容的數(shù)據(jù)字典視圖里進(jìn)行選擇,當(dāng)查詢這個(gè)視圖時(shí),Oracle讀取日志文件,然后以特定格式返回結(jié)果,一旦分析列出的日志文件,就調(diào)用另一個(gè)存儲(chǔ)過(guò)程停止LogMiner。

類(lèi)型

過(guò)程名

用途

過(guò)程

Dbms_logmnr_d.build

創(chuàng)建一個(gè)數(shù)據(jù)字典文件

過(guò)程

Dbms_logmnr.add_logfile

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門(mén)文章 Oracle中使用alter table來(lái)增加,刪除,修改列Oracle中使用alter table來(lái)增加,刪除,修改列oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修使用低權(quán)限Oracle數(shù)據(jù)庫(kù)賬戶得到管理員權(quán)限使用低權(quán)限Oracle數(shù)據(jù)庫(kù)賬戶得到管理員權(quán)限Oracle對(duì)user的訪問(wèn)控制Oracle對(duì)user的訪問(wèn)控制

相關(guān)下載

人氣排行 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法ORACLE和SQL語(yǔ)法區(qū)別歸納(1)oracle grant 授權(quán)語(yǔ)句如何加速Oracle大批量數(shù)據(jù)處理Oracle刪除表的幾種方法ORACLE修改IP地址后如何能夠使用Oracle 10g創(chuàng)建表空間和用戶并指定權(quán)限