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