非系統資料檔案損壞,rman備份恢復
實驗前提:已經做好備份。
SQL>
col file_name for a50
select file_id,file_name from dba_data_files;
FILE_ID FILE_NAME
---------- --------------------------------------------------
4 /home/oracle/app/oradata/orcl/users01.dbf
2 /home/oracle/app/oradata/orcl/sysaux01.dbf
1 /home/oracle/app/oradata/orcl/system01.dbf
5 /home/oracle/app/oradata/orcl/tbtb01.dbf
6 /home/oracle/app/oradata/orcl/ogg01.dbf
7 /home/oracle/app/oradata/andy01.dbf
8 /home/oracle/app/oradata/orcl/bbb.dbf
9 /home/oracle/app/oradata/orcl/andy02.dbf
10 /home/oracle/app/oradata/orcl/andy03.dbf
11 /home/oracle/app/oradata/orcl/tts01.dbf
12 /home/oracle/app/oradata/orcl/ttsind01.dbf
FILE_ID FILE_NAME
---------- --------------------------------------------------
13 /home/oracle/app/oradata/orcl/fda01.dbf
14 /home/oracle/app/oradata/orcl/fda02.dbf
15 /home/oracle/app/oradata/orcl/undotbs02.dbf
14 rows selected.
--模擬資料檔案損壞
[oracle@11g ~]$ mv /home/oracle/app/oradata/orcl/andy02.dbf /home/oracle/app/oradata/orcl/andy02.dbf.bak
SQL> alter system checkpoint;
alter system checkpoint
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 2432
Session ID: 1 Serial number: 5
-- 檢視報錯資訊
[oracle@11g trace]$ cat alert_orcl.log |grep ORA-
ORA-01116: error in opening database file 9
ORA-01110: data file 9: '/home/oracle/app/oradata/orcl/andy02.dbf'
ORA-27041: unable to open file
ORA-63999: data file suffered media failure
SQL> startup mount;
SQL> set lin 400
SQL> col error for a40
SQL> select * from v$recover_file;
FILE# ONLINE ONLINE_ ERROR CHANGE# TIME
---------- ------- ------- ---------------------------------------- ---------- ---------
9 ONLINE ONLINE FILE NOT FOUND 0
--利用備份恢復
(如果資料檔案損壞,發現及時,資料庫沒有當機,則立刻offline對應檔案,避免當機。如果已經當機,則可跳過offline)
RMAN> sql 'alter database datafile 9 offline';
RMAN> restore datafile 9;
RMAN> recover datafile 9;
RMAN> sql 'alter database datafile 9 online';
RMAN> alter database open;
database opened
補充:
在11.2.0.2之前,如果資料庫執行在歸檔模式下,並且寫錯誤發生在非SYSTEM表空間檔案,則資料庫會將發生錯誤的檔案離線,在從11.2.0.2開始,資料庫會Crash例項以替代Offline。注意:在非歸檔模式下或者SYSTEM遭受錯誤時,資料庫會直接崩潰。
如果我們不想嘗試這個新特性,可以透過將 _DATAFILE_WRITE_ERRORS_CRASH_INSTANCE 設定為FALSE來遮蔽該行為。
該引數是一個動態引數: alter system set "_datafile_write_errors_crash_instance"=false;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2137867/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 非系統表空間損壞,rman備份恢復
- 磁碟損壞造成RMAN備份檔案有壞塊的恢復案例
- 備份與恢復--重建控制檔案後資料檔案損壞的恢復
- 備份與恢復--資料檔案損壞或丟失
- RMAN備份恢復典型案例——資料檔案存在壞快
- rman 恢復---歸檔丟失and資料檔案損壞
- Oracle塊損壞恢復(有rman備份)Oracle
- rman備份恢復-rman恢復資料檔案測試
- 介質恢復,即磁碟或作業系統檔案損壞的恢復-非RMAN方法作業系統
- RMAN恢復案例:丟失非系統資料檔案恢復
- 備份&恢復之八:RMAN備份歸檔模式下損壞(丟失)多個資料檔案,進行整個資料庫的恢復模式資料庫
- 【備份恢復】歸檔模式下丟失系統關鍵資料檔案 利用RMAN備份恢復模式
- 備份&恢復之十三:損壞全部控制檔案
- 【備份恢復】無備份線上恢復非關鍵資料檔案
- REDO日誌損壞,非歸檔模式資料檔案恢復模式
- [ORACLE] 系統故障資料庫恢復--資料檔案無損壞Oracle資料庫
- 備份&恢復之十二:損壞單個控制檔案
- 非RMAN熱備份資料庫和恢復資料庫
- RMAN_部分資料檔案丟失或者損壞的恢復
- 資料檔案或者tablespace損壞基於rman恢復測試
- rman備份-(1) 利用備份級恢復資料檔案和控制檔案
- rman恢復--歸檔模式有備份,丟失資料檔案的恢復模式
- rman恢復--歸檔模式無備份,丟失資料檔案的恢復模式
- rman恢復資料庫--用備份的控制檔案資料庫
- 資料檔案丟失損壞的恢復--
- u盤檔案損壞怎麼恢復資料 u盤恢復損壞資料的有效方法
- 備份&恢復之五:歸檔模式下丟失或損壞一個資料檔案模式
- 【伺服器資料恢復】伺服器reiserfs檔案系統損壞的資料恢復案例伺服器資料恢復
- 【儲存資料恢復】IBM儲存檔案NTFS系統損壞的資料恢復案例資料恢復IBM
- 資料庫在沒有備份的情況下的資料檔案損壞的恢復資料庫
- Oracle 11g RMAN恢復-場景3:非系統表空間資料檔案損壞,資料庫OPEN狀態,高可用Oracle資料庫
- 【備份恢復】非歸檔模式下丟失任意資料檔案 恢復操作模式
- 使用RMAN恢復完全損壞的資料庫資料庫
- 【備份與恢復】恢復受損的口令檔案
- 備份&恢復之十:損壞非當前聯機日誌
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- 某個資料檔案損壞完全恢復(三)
- RMAN備份恢復之控制檔案的恢復(三)