Oracle 10g 備份與恢復筆記Oracle 10g 備份與恢復筆記
1. Oracle 10g 一個文件塊被損壞恢復.
1.1 查看alert log和報錯日誌. 查出被損壞的數據文件.
1.2 SQL> alter database datafile '/u01/oracle/oradata/pig.dbf' offline;
Database altered.
1.3 SQL> ! cp /u01/oracle/oradata/pig.dbf /u01/oracle/oradata/dgdemo/
1.4 SQL> alter database rename file '/u01/oracle/oradata/pig.dbf' to '/u01/oracle/oradata/dgdemo/pig.dbf';
Database altered.
1.5 SQL> alter database datafile '/u01/oracle/oradata/dgdemo/pig.dbf' online;
Database altered.
2. 指定歸檔日誌恢復
Recover from ‘/u01/oracle/oradata/arch/1_3_640275112.dbf’ datafile 5;
3. 自動應用歸檔日誌恢復
3.1 在恢復命令之前設置自動恢復
3.2 Set autorecover on
3.3 Recover datafile 5
3.4 在恢復命令中指定自動恢復
3.5 Recover automatic datafile 5
在OS 中刪除數據文件的恢復.
1. alter database datafile '/u1/app/oracle/oradata/TJWIP/king.dbf' offline drop;
2. alter database create datafile '/u1/app/oracle/oradata/TJWIP/king.dbf' ;
3. recover datafile 13;
不完全恢復:
1. recover database until time
該命令是執行基於時間不完全恢復. 必須確保在特定時間點之前的所有歸檔日誌和重做日誌全部存在.
Alter session set nls_date_format=’yyyy/mm/dd hh24:mi:ss’
2. recover database until change
該命令執行基於SCN不完全恢復. 必須確保在特定SCN之前的所有歸檔日誌和重做日誌全部存在
3. recover database until cancel
該命令執行基於取消不完全恢復. 如果發現所需的歸檔日誌和重做日誌不存在, 那么指定cancel 選項取消恢復.
3. recover database ……using backup controlfile.
該命令執行基於備份控制文件不完全恢復. 在執行該命令之前. 通過查看alert log file 可以確定誤操作的時間點和SCN值. 然後可以根據時間點和SCN值進行恢復.
實驗一: recover database until time
SQL> recover database until time '2008/01/18 23:28:11';
Media recovery complete.
SQL> alter database open;
alter database open