Oracle 11g資料庫恢復:場景11:資料檔案損壞,不能恢復到原來的位置, 恢復到新的路徑
sys@TESTDB11>select '! rm ' || name from v$datafile;
'!RM'||NAME ---------------------------------------------------------------------------------------------------------------------------------------------------------------- ! rm /u01/app/oracle/oradata/TestDB11/system01.dbf ! rm /u01/app/oracle/oradata/TestDB11/sysaux01.dbf ! rm /u01/app/oracle/oradata/TestDB11/undotbs01.dbf ! rm /u01/app/oracle/oradata/TestDB11/users01.dbf ! rm /u01/app/oracle/oradata/TestDB11/example01.dbf ! rm /u01/app/oracle/oradata/TestDB11/newundotbs01.dbf
6 rows selected.
--關庫 sys@TESTDB11>shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down.
--檔案損壞 sys@TESTDB11>! rm /u01/app/oracle/oradata/TestDB11/system01.dbf
! rm /u01/app/oracle/oradata/TestDB11/system01.dbf ! rm /u01/app/oracle/oradata/TestDB11/sysaux01.dbf ! rm /u01/app/oracle/oradata/TestDB11/undotbs01.dbf ! rm /u01/app/oracle/oradata/TestDB11/users01.dbf ! rm /u01/app/oracle/oradata/TestDB11/example01.dbf ! rm /u01/app/oracle/oradata/TestDB11/newundotbs01.dbff
sys@TESTDB11>! ls /u01/app/oracle/oradata/TestDB11 control01.ctl redo01.log redo02.log redo03.log temp01.dbf
--還原到新的位置 sys@TESTDB11>! cp /backup/inconsistent_backup/*.dbf /oradata/TestDB11
--嘗試啟動 sys@TESTDB11>startup ORACLE instance started.
Total System Global Area 855982080 bytes Fixed Size 2230792 bytes Variable Size 641730040 bytes Database Buffers 209715200 bytes Redo Buffers 2306048 bytes Database mounted. ORA-01157: cannot identify/lock data file 1 - see DBWR trace file ORA-01110: data file 1: '/u01/app/oracle/oradata/TestDB11/system01.dbf'
--檢視需要恢復的檔案的狀態 sys@TESTDB11>select * from v$recover_file;
FILE# ONLINE ONLINE_ ERROR CHANGE# TIME ---------- ------- ------- ----------------------------------------------------------------- ---------- --------- 1 ONLINE ONLINE FILE NOT FOUND 0 2 ONLINE ONLINE FILE NOT FOUND 0 3 ONLINE ONLINE FILE NOT FOUND 0 4 ONLINE ONLINE FILE NOT FOUND 0 5 ONLINE ONLINE FILE NOT FOUND 0 6 ONLINE ONLINE FILE NOT FOUND 0
6 rows selected.
--確定在控制檔案中重名稱檔案需要執行的命令 sys@TESTDB11>select length('/u01/app/oracle/oradata/TestDB11/') from dual;
LENGTH('/U01/APP/ORACLE/ORADATA/TESTDB11/') ------------------------------------------- 33 sys@TESTDB11>select substr(name, 34) from v$datafile;
SUBSTR(NAME,34) ---------------------------------------------------------------------------------------------------------------------------------------------------------------- system01.dbf sysaux01.dbf undotbs01.dbf users01.dbf example01.dbf newundotbs01.dbf
6 rows selected.
sys@TESTDB11>select 'alter database rename file ''' || name || ''' to ''/oradata/TestDB11/' || 2 substr(name, 34) || ''';' from v$datafile;
'ALTERDATABASERENAMEFILE'''||NAME||'''TO''/ORADATA/TESTDB11/'||SUBSTR(NAME,34)||''';' ---------------------------------------------------------------------------------------------------------------------------------------------------------------- alter database rename file '/u01/app/oracle/oradata/TestDB11/system01.dbf' to '/oradata/TestDB11/system01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/sysaux01.dbf' to '/oradata/TestDB11/sysaux01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/undotbs01.dbf' to '/oradata/TestDB11/undotbs01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/users01.dbf' to '/oradata/TestDB11/users01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/example01.dbf' to '/oradata/TestDB11/example01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/newundotbs01.dbf' to '/oradata/TestDB11/newundotbs01.dbf';
6 rows selected.
--修改控制檔案中記錄的檔案位置和名稱 alter database rename file '/u01/app/oracle/oradata/TestDB11/system01.dbf' to '/oradata/TestDB11/system01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/sysaux01.dbf' to '/oradata/TestDB11/sysaux01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/undotbs01.dbf' to '/oradata/TestDB11/undotbs01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/users01.dbf' to '/oradata/TestDB11/users01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/example01.dbf' to '/oradata/TestDB11/example01.dbf'; alter database rename file '/u01/app/oracle/oradata/TestDB11/newundotbs01.dbf' to '/oradata/TestDB11/newundotbs01.dbf';
--確定修改成功 sys@TESTDB11>select name from v$datafile;
NAME ------------------------------------------------------------ /oradata/TestDB11/system01.dbf /oradata/TestDB11/sysaux01.dbf /oradata/TestDB11/undotbs01.dbf /oradata/TestDB11/users01.dbf /oradata/TestDB11/example01.dbf /oradata/TestDB11/newundotbs01.dbf
6 rows selected. --恢復,開庫 sys@TESTDB11>recover database; Media recovery complete. sys@TESTDB11>alter database open;
Database altered. |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1153193/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 11g 資料庫恢復:場景12續:將資料檔案恢復回原來正確的位置Oracle資料庫
- Oracle 11g 資料庫恢復-場景5:部分檔案損壞恢復,開庫狀態,低可用恢復方式Oracle資料庫
- Oracle 11g 資料庫恢復-場景4:部分檔案損壞恢復,開庫狀態, 高可用恢復方式Oracle資料庫
- Oracle 11g 資料庫恢復-場景7:部分檔案損壞Oracle資料庫
- Oralce 11g資料庫恢復-場景3:部分檔案損壞恢復,關庫狀態,高可用恢復方式資料庫
- 【資料庫資料恢復】MongoDB資料庫檔案損壞的資料恢復案例資料庫資料恢復MongoDB
- Oracle 11g RMAN恢復-場景1:所有的資料檔案損壞,資料庫CLOSEOracle資料庫
- Oracle 11g 資料庫恢復-場景1:所有的資料檔案損壞,OPEN狀態Oracle資料庫
- 11g rman備份恢復資料檔案datafile到新的位置
- Oracle 11g 資料庫恢復-場景2:所有據檔案損壞,關庫狀態Oracle資料庫
- Bak檔案恢復到資料庫資料庫
- u盤檔案損壞怎麼恢復資料 u盤恢復損壞資料的有效方法
- Oracle 11g RMAN恢復-場景2:所有的資料檔案損壞,OPEN狀態Oracle
- Oracle資料庫UNDO損壞後的恢復Oracle資料庫
- 資料檔案丟失損壞的恢復--
- 備份與恢復--重建控制檔案後資料檔案損壞的恢復
- 資料底層損壞的恢復方法—拼碎片恢復資料
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 【資料庫資料恢復】Oracle資料庫檔案出現壞塊報錯的資料恢復案例資料庫資料恢復Oracle
- [ORACLE] 系統故障資料庫恢復--資料檔案無損壞Oracle資料庫
- 資料庫資料恢復—NTFS分割槽損壞如何恢復SqlServer資料庫資料資料庫資料恢復SQLServer
- Oracle 11g 資料庫恢復:場景9-系統預設undo表空間資料檔案損壞Oracle資料庫
- Oracle資料檔案損壞恢復例項二則Oracle
- master資料庫損壞之後的恢復AST資料庫
- 使用RMAN恢復完全損壞的資料庫資料庫
- 資料庫資料恢復-SQL SERVER資料庫MDF (NDF)或LDF損壞如何恢復資料?資料庫資料恢復SQLServer
- Oracle 11g 資料庫恢復(一)Oracle資料庫
- 【伺服器資料恢復】伺服器reiserfs檔案系統損壞的資料恢復案例伺服器資料恢復
- 【儲存資料恢復】IBM儲存檔案NTFS系統損壞的資料恢復案例資料恢復IBM
- u盤檔案損壞怎麼恢復資料 u盤損壞無法讀取怎麼恢復資料
- 某個資料檔案損壞完全恢復(三)
- 【資料庫資料恢復】ASM例項不能掛載的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- Oracle 11g 資料庫恢復-場景8:系統預設undo表空間資料檔案損壞,CLOSE狀態Oracle資料庫
- 幾種場景的資料庫恢復資料庫
- rman 恢復---歸檔丟失and資料檔案損壞
- 【資料庫資料恢復】如何恢復Oracle資料庫truncate表的資料資料庫資料恢復Oracle
- Oracle備份與恢復【丟失資料檔案的恢復】Oracle
- Oracle資料庫不同損壞級別的恢復詳解Oracle資料庫