oracle 備份恢復概要介紹
備份恢復是oracle的一門重要技術,當然大家最好都不需要用到這門技術,就像大家最好都不需要去醫院。
在打開數據庫的時候,oracle會對控制文件和數據文件頭的檢查點進行比對:
1.檢查數據文件頭的checkpoint cnt與控制文件中的checkpoint cnt是否一致,如果一致,那么進行第二次檢查
2.檢查數據文件頭開始的SCN和控制文件中結束的SCN進行比較,如果一致,那么不需要進行恢復,但是如果不一致,比如突然斷電,控制文件還沒有
來得及記錄數據文件的結束的SCN,所以這里的第二步就無法通過。
當然一切備份其實都是為了更快的恢復,所以在制定備份策略,就要兼顧到很多方面
下備份的分類:
類型分類:
邏輯備份和物理備份
數據庫狀態:
熱備和冷備
備份的狀態:
一致性備份和非一致性備份
備份規模:
完全備份(歸檔和非歸檔),表空間備份,數據文件備份,控制文件備份,歸檔日志文件備份
恢復的分類:
實例恢復,介質恢復
恢復方式:
完全恢復和不完全恢復
常見的備份恢復技術:
1.用戶管理備份和恢復
2.RMAN備份和恢復
3.閃回
4.邏輯導入導出,exp/imp expdp/empdp
5.data guard,當然DG是容災用的,說到底其實還是備份
今天把最簡單的一種技術介紹一下,算開個頭
閃回查詢:
這個特性其實要歸功與UNDO,閃回查詢其實就是查詢的UNDO操作過的數據,所以如果操作過的數據如果不在UNDO里了,那么肯定無法閃回查詢。
舉例:比如一個update的操作,操作后,會在UNDO里構造update之前要操作的數據,所以立即使用閃回查詢可以查到,當然如果你的update是誤操作,就可以閃回
但是如果UNDO已經覆蓋了操作的數據,那么無法閃回。大家都知道UNDO是根據一定的參數,有一個UNDO數據的保留時間,過了這個時間當然會被覆蓋掉。
閃回查詢支持的類型:
1.基于SCN的閃回查詢(as of scn)
2.基于時間的閃回查詢(as of timestamp)
基于SCN的閃回查詢實例:
SQL> create table flash_table_scn as select * from dba_objects where rownum<=1000;
Table created.
SQL> select count(*) from flash_table_scn;
COUNT(*)
--------------------------------------------------
1000
SQL> SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FROM DUAL;
GET_SYSTEM_CHANGE_NUMBER
--------------------------------------------------
122693324625
SQL> delete from flash_table_scn;
1000 rows deleted.
SQL> commit;
Commit complete.
SQL> select count(*) from flash_table_scn as of scn 122693324625;
COUNT(*)
--------------------------------------------------
1000
as of timestamp還是轉換為as of scn的
SQL> select timestamp_to_scn(sysdate) from dual;
TIMESTAMP_TO_SCN(SYSDATE)
--------------------------------------------------
122693325694
SQL> select to_char(scn_to_timestamp(122693325694),'yyyy-mm-dd hh24:mi:ss') from dual;
TO_CHAR(SCN_TO_TIMESTAMP(12269
---------------------------------------------------------------------------
2013-04-15 17:21:56
能轉換是因為SMON_SCN_TIME此表,這里記錄了時間和SCN的對應數據,所以如果這張表沒有對應的,那么是無法轉換的。
閃回技術用起來很方便,這里還可以閃回database,table這些技術將在接下的繼續。
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!