鼎甲技術(shù)應(yīng)用:Oracle日志分析之 事務(wù)級精準(zhǔn)撤銷
發(fā)布人:scutech 發(fā)布日期:2018-08-17 14:35:43 點擊數(shù):8245
鼎甲作為國內(nèi)首家成功通過 Oracle BSP(Backup Solutions Program)的官方授權(quán)的災(zāi)備產(chǎn)品供應(yīng)商,產(chǎn)品DBackup 在針對 Oracle 數(shù)據(jù)庫災(zāi)備上,表現(xiàn)出獨特的優(yōu)勢:利用 Oracle 日志解析的功能,不僅僅只是實現(xiàn)了事務(wù)級精準(zhǔn)恢復(fù),還可以實現(xiàn)事務(wù)級精準(zhǔn)撤銷。
一、事務(wù)撤銷的常規(guī)操作
對于數(shù)據(jù)庫運維人員來說,會常遇到這樣的報障:“我錄入系統(tǒng)時,不小心把***數(shù)據(jù)給寫錯了,請幫我修改一下,或者刪除后我再重新錄入?!边\維人員在得到確認(rèn)修改許可后,如果只是獨立的一個數(shù)據(jù)值修改,往往只是通過SQL語句的update來更新數(shù)據(jù)。但如果是有關(guān)聯(lián)性的數(shù)據(jù),直接數(shù)據(jù)修改是不可行的,容易導(dǎo)致對數(shù)據(jù)的二次傷害,所以需要通過“事務(wù)撤銷處理”的方式來還原數(shù)據(jù),常規(guī)撤銷的處理步驟:
-
首先,需要和數(shù)據(jù)錄入人員確定誤操作的時間范圍;
-
接著,調(diào)用LogMiner工具進(jìn)行數(shù)據(jù)分析。使用過LogMiner的都清除,這是一個純指令操作的工具,要尋找到誤操作的事務(wù)或SCN,需要執(zhí)行以下常規(guī)操作步驟:
-
進(jìn)入數(shù)據(jù)庫,將數(shù)據(jù)庫當(dāng)前數(shù)據(jù)字典分析出來,生成數(shù)據(jù)字典文件;
-
將需要分析的歸檔文件添加到分析列表,如果要分析多個日志文件就添加多個;
-
查看當(dāng)前分析列表;
-
以時間段為基準(zhǔn)進(jìn)行分析;
-
查詢分析結(jié)果。
-
-
最后,通過日志的分析后,確定誤操作的事務(wù),執(zhí)行UNDO操作。
這是一個繁瑣和復(fù)雜的處理過程,需要有一定經(jīng)驗的DBA才能處理,不適用于大多數(shù)系統(tǒng)維護(hù)人員。所以當(dāng)發(fā)生誤操作時,往往需要求助于原廠服務(wù)或者尋找有經(jīng)驗的DBA處理,無論哪種方式價格都不菲。而最關(guān)鍵是由于需要協(xié)調(diào)人員,誤操作處理無法做到及時和快速的處理。
二、鼎甲簡易的事務(wù)撤銷操作
現(xiàn)在,您可以借助于鼎甲災(zāi)備產(chǎn)品對Oracle數(shù)據(jù)庫日志文件的解析功能,直觀查看每個事務(wù)的SCN信息,并進(jìn)行事務(wù)的撤銷處理。
DBackup做為鼎甲災(zāi)備產(chǎn)品的核心一員,我們來看看在對事務(wù)撤銷處理上是如何實現(xiàn)和操作的。
1. 事務(wù)撤銷
1) 日志備份。DBackup是備份容災(zāi)系統(tǒng),所有還原和恢復(fù)的數(shù)據(jù),都依賴于備份作業(yè)所獲取的備份集數(shù)據(jù)。所以,要支持事務(wù)的撤銷處理,首先得配有日志的備份作業(yè),獲取到Oracle的日志文件,包括:重做日志(Redo log)、歸檔日志(Archive log)。
2) 日志分析。基于日志備份集,用戶只需確定需要進(jìn)行日志分析的時間段,DBackup將自動提取該時間段的數(shù)據(jù)進(jìn)行分析,并以列表方式直觀展現(xiàn)。
3) 選擇事務(wù)撤銷。依據(jù)分析出來的日志信息,選擇一個或多個事務(wù),創(chuàng)建撤銷作業(yè),針對生產(chǎn)環(huán)境中的在線數(shù)據(jù)庫進(jìn)行數(shù)據(jù)UNDO處理,可以定點撤銷某些已經(jīng)提交的事務(wù),把數(shù)據(jù)還原正確。
2. 操作簡易
基于已有的日志備份集數(shù)據(jù),只需簡易幾步即可完成撤銷操作。
1) 選擇需要日志分析的時間段。用戶只需在管理界面上的時間控件中選擇起始和終止的時間點。(彩蛋:如果需要選擇的時間不在已有備份集范圍,也是可以的。)
2) 深度查看分析結(jié)果。點擊事務(wù)信息,即可查看每個事務(wù)所關(guān)聯(lián)的SCN,了解SCN所執(zhí)行的內(nèi)容。
3)配置撤銷作業(yè)。以事務(wù)為基數(shù),選擇需要撤銷的事務(wù),DBackup自動讀取出需要撤銷的事務(wù)提交ID,并創(chuàng)建作業(yè)立即執(zhí)行。
4) 撤銷事務(wù)審計。直接在Oracle的執(zhí)行UNDO操作,雖然數(shù)據(jù)庫日志中會記錄操作的審計信息,但如果要查看,還得進(jìn)行復(fù)雜的日志分析處理。但在DBackup中,當(dāng)用戶進(jìn)行了事務(wù)級撤銷操作,系統(tǒng)將會自動把該行為記錄到系統(tǒng)日志中,提供審計管理。
三、結(jié)束語
把復(fù)雜的事務(wù)處理實現(xiàn)簡單化,這是一個優(yōu)秀產(chǎn)品的行業(yè)水準(zhǔn)。在Oracle事務(wù)撤銷處理的業(yè)務(wù)實現(xiàn)上,鼎甲災(zāi)備產(chǎn)品把“繁瑣復(fù)雜”變成了“簡單易用”,使得數(shù)據(jù)庫的日常運維工作更加容易,讓更多非專業(yè)DBA的運維人員受用,企業(yè)也會因此而降低運維成本,提高運維效率,同時還可以更有效地審計運維人員對數(shù)據(jù)庫的操作。
鼎甲科技一直走在引領(lǐng)行業(yè)技術(shù)發(fā)展的道路上。