Oracle数据库中闪回恢复的详细分析
Oracle9i開始提供閃回查詢,以便能在需要的時候查到過去某個時刻的一致性數據,這是通過Undo實現的。這個功能有很大的限制,就是相關事務的undo不能被覆蓋,否則就無力回天了。oracle10g大大的增強了閃回查詢的功能,并且提供了將整個數據庫回退到過去某個時刻的能力,這是通過引入一種新的flashback log實現的。
flashback log有點類似redo log,只不過redo log將數據庫往前滾,flashback log則將Oracle數據庫往后滾。為了保存管理和備份恢復相關的文件,oracle10g提供了一個叫做閃回恢復區(Flashback recovery area)的新特性,可以將所有恢復相關的文件,比如flashback log,archive log,backup set等,放到這個區域集中管理。
?
1.設置閃回恢復區
閃回恢復區主要通過3個初始化參數來設置和管理
?
db_recovery_file_dest:指定閃回恢復區的位置
?
db_recovery_file_dest_size:指定閃回恢復區的可用空間大小
?
db_flashback_retention_target:指定Oracle數據庫可以回退的時間,單位為分鐘,默認1440分鐘,也就是一天。當然,實際上可回退的時間還決定于閃回恢復區的大小,因為里面保存了回退所需要的 flash log。所以這個參數要和db_recovery_file_dest_size配合修改。
?
2.啟動flashback database
設置了閃回恢復區后,可以啟動閃回數據庫功能。
?
首先,數據庫必須已經處于歸檔模式
那么如何設置歸檔呢?很簡單的步驟
1.關閉數據庫
?
?
?
2.啟動Oracle數據庫為mount模式
?
?
?
3.顯示和修改歸檔模式
?
?
?
?
4.設置歸檔日志的格式
?
?
?
5.設置歸檔日志的存放路徑
?
?
?
?
6.強制切換歸檔日至
?
?
?
7.取消歸檔
?
?
?
?
參數
?
1.格式參數
?
%s 日志序列號
?
%S 日志序列號(帶前導的0)
?
%t 重做線程編號
?
%a 活動的ID號
?
%dOracle 數據庫ID號
?
%r RESELOGS的iD值
?
?
?
?
然后,啟動Oracle數據庫到mount狀態
?
轉載于:https://www.cnblogs.com/zwl715/p/3738560.html
總結
以上是生活随笔為你收集整理的Oracle数据库中闪回恢复的详细分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工行黑白菜年费多少?能减免吗?
- 下一篇: 工控安全入门之 Ethernet/IP