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