使用NORESETLOGS重建控制檔案恢復資料庫
-- 備份控制檔案
RMAN> backup datafile 1;
Starting backup at 29-SEP-13
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/system01.dbf
channel ORA_DISK_1: starting piece 1 at 29-SEP-13
channel ORA_DISK_1: finished piece 1 at 29-SEP-13
piece handle=/u01/app/oracle/flash_recovery_area/WAILON/backupset/2013_09_29/o1_mf_nnndf_TAG20130929T174837_94hxvp14_.bkp tag=TAG20130929T174837 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:26
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 29-SEP-13
channel ORA_DISK_1: finished piece 1 at 29-SEP-13
piece handle=/u01/app/oracle/flash_recovery_area/WAILON/backupset/2013_09_29/o1_mf_ncsnf_TAG20130929T174837_94hxwjhq_.bkp tag=TAG20130929T174837 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 29-SEP-13
-- 模擬交易產生並切換日誌
17:50:13 SYS@wailon> create table scott.a1 tablespace wailon as select * from scott.a;
Table created.
17:51:36 SYS@wailon> alter system switch logfile;
System altered.
17:51:45 SYS@wailon> create table scott.b1 tablespace wailon as select * from scott.b;
Table created.
17:51:53 SYS@wailon> alter system switch logfile;
System altered.
17:52:10 SYS@wailon> alter system checkpoint;
System altered.
17:52:15 SYS@wailon> select count(*) from scott.a1;
COUNT(*)
----------
23
17:52:20 SYS@wailon> select count(*) from scott.b1;
COUNT(*)
----------
23
17:52:25 SYS@wailon> select group#,sequence#,status from v$log;
GROUP# SEQUENCE# STATUS
---------- ---------- ----------------
1 7 CURRENT
3 6 INACTIVE
2 5 INACTIVE
17:52:30 SYS@wailon> select * from v$controlfile;
STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS
------- --------------------------------------------- --- ---------- --------------
/u01/app/oracle/oradata/wailon/control01.ctl NO 16384 614
/u01/app/oracle/oradata/wailon/control02.ctl NO 16384 614
-- 模擬意外斷電,並且控制檔案丟失
17:52:41 SYS@wailon> shutdown abort;
ORACLE instance shut down.
17:52:47 SYS@wailon> host rm /u01/app/oracle/oradata/wailon/control*.ctl
17:53:22 SYS@wailon> host ls /u01/app/oracle/oradata/wailon/control*
ls: cannot access /u01/app/oracle/oradata/wailon/control*: No such file or directory
-- 啟動資料庫報錯,找不到控制檔案
17:53:30 SYS@wailon> startup
ORACLE instance started.
Total System Global Area 417546240 bytes
Fixed Size 2228944 bytes
Variable Size 352324912 bytes
Database Buffers 54525952 bytes
Redo Buffers 8466432 bytes
ORA-00205: error in identifying control file, check alert log for more info
-- 關閉資料庫,啟動到NOMOUNT狀態
17:53:38 SYS@wailon> shutdown immediate;
ORA-01507: database not mounted
ORACLE instance shut down.
17:53:55 SYS@wailon> startup nomount;
ORACLE instance started.
Total System Global Area 417546240 bytes
Fixed Size 2228944 bytes
Variable Size 352324912 bytes
Database Buffers 54525952 bytes
Redo Buffers 8466432 bytes
-- 由於所有聯機日誌檔案可用,使用NORESETLOGS重建控制檔案
17:54:01 SYS@wailon> CREATE CONTROLFILE REUSE DATABASE "WAILON" NORESETLOGS FORCE LOGGING ARCHIVELOG
17:54:06 2 MAXLOGFILES 16
17:54:06 3 MAXLOGMEMBERS 3
17:54:06 4 MAXDATAFILES 100
17:54:06 5 MAXINSTANCES 8
17:54:06 6 MAXLOGHISTORY 292
17:54:06 7 LOGFILE
17:54:06 8 GROUP 1 '/u01/app/oracle/oradata/wailon/redo01.log' SIZE 50M BLOCKSIZE 512,
17:54:06 9 GROUP 2 '/u01/app/oracle/oradata/wailon/redo02.log' SIZE 50M BLOCKSIZE 512,
17:54:06 10 GROUP 3 '/u01/app/oracle/oradata/wailon/redo03.log' SIZE 50M BLOCKSIZE 512
17:54:06 11 -- STANDBY LOGFILE
17:54:06 12 DATAFILE
17:54:06 13 '/u01/app/oracle/oradata/system01.dbf',
17:54:06 14 '/u01/app/oracle/oradata/sysaux01.dbf',
17:54:06 15 '/u01/app/oracle/oradata/undotbs01.dbf',
17:54:06 16 '/u01/app/oracle/oradata/users01.dbf',
17:54:06 17 '/u01/app/oracle/oradata/wailon/WAILON/datafile/o1_mf_wailon_94g6p2k8_.dbf'
17:54:06 18 CHARACTER SET ZHS16GBK
17:54:06 19 ;
Control file created.
-- 由於資料檔案不一致,需要進行介質恢復
17:54:08 SYS@wailon> alter database open;
alter database open
*
ERROR at line 1:
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: '/u01/app/oracle/oradata/system01.dbf'
17:54:37 SYS@wailon> recover database;
Media recovery complete.
17:54:48 SYS@wailon> alter database open;
Database altered.
-- 成功開啟資料庫
-- 驗證資料
17:55:08 SYS@wailon> select count(*) from scott.a1;
COUNT(*)
----------
23
17:55:28 SYS@wailon> select count(*) from scott.b1;
COUNT(*)
----------
23
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/429786/viewspace-777154/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 重建控制檔案的恢復(noresetlogs)
- 使用RESETLOGS重建控制檔案恢復資料庫資料庫
- 控制檔案丟失恢復例項(3) - 使用重建控制檔案方式(noresetlogs)
- 使用RESETLOGS重建控制檔案恢復資料庫(二)資料庫
- 備份與恢復--重建控制檔案後資料檔案損壞的恢復
- 恢復之重建資料檔案
- 使用備份的控制檔案恢復資料庫資料庫
- 所有控制檔案損壞的恢復--noresetlogs方式
- sql 重建控制檔案resetlogs和noresetlogsSQL
- 備份與恢復--重建控制檔案
- 重建Oracle資料庫控制檔案Oracle資料庫
- 重建控制檔案時resetlogs與noresetlogs的使用情況
- Controlfile 重建控制檔案 noresetlogs, resetlogs..
- 控制檔案重建後的不完全恢復
- 重建控制檔案的案例(RESETLOGS模式和NORESETLOGS模式)模式
- 丟失一個控制檔案並恢復資料庫資料庫
- rman恢復資料庫--用備份的控制檔案資料庫
- 控制檔案被破壞的資料庫恢復方法資料庫
- 使用rman恢復控制檔案
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 【恢復】使用控制檔案的trace備份恢復因異常斷電導致所有控制檔案損壞的資料庫故障資料庫
- RMAN恢復案例:無恢復目錄,丟失全部資料檔案、控制檔案、日誌檔案恢復
- 【資料庫資料恢復】MongoDB資料庫檔案損壞的資料恢復案例資料庫資料恢復MongoDB
- Bak檔案恢復到資料庫資料庫
- 資料庫非正常關閉後重建控制檔案,OPEN時為何需要執行介質恢復?資料庫
- Oracle資料庫控制檔案在備份恢復中的作用Oracle資料庫
- 【原創】模擬控制檔案丟失的資料庫恢復資料庫
- 控制檔案恢復—從trace檔案中恢復
- 使用舊的控制檔案備份來恢復控制檔案
- 【資料庫資料恢復】Sql Server資料庫檔案丟失的資料恢復過程資料庫資料恢復SQLServer
- 當oracle丟失所有控制檔案後可以重新建立控制檔案來恢復資料庫Oracle資料庫
- Oracle備份與恢復系列(四)複製資料庫 使用原有的控制檔案Oracle資料庫
- 備份與恢復--重新控制檔案資料字典和控制檔案不一致的恢復
- 引數檔案控制檔案和資料檔案丟失的恢復
- 【資料庫資料恢復】EXT3檔案系統下MYSQL資料庫恢復案例資料庫資料恢復MySql
- 同時丟失控制檔案與資料檔案的恢復
- 控制檔案版本不一致下恢復資料庫資料庫
- RMAN恢復控制檔案