冷备份---删除控制文件

来源:互联网 发布:创维电视直播软件 编辑:程序博客网 时间:2024/05/23 19:11

1.删除控制文件

rm -f control0*

 

2.验证

SQL> select * from v$datafile;
select * from v$datafile
              *
ERROR at line 1:
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/u01/app/oracle/oradata/demo1/control01.ctl'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3

 

3.关闭数据库

SQL> shutdown abort;
ORACLE instance shut down.

 

4.拷贝备份控制文件到相应位置

cp control0* /u01/app/oracle/oradata/demo1/

 

5.启动数据库到mount状态

SQL> startup mount 

 

6.恢复数据库

SQL> recover database using  backup controlfile;
ORA-00283: recovery session canceled due to errors
ORA-19909: datafile 1 belongs to an orphan incarnation
ORA-01110: data file 1: '/u01/app/oracle/oradata/demo1/system01.dbf'

 

7.手工创建控制文件

使数据库状态到nomount状态

SQL> startup nomount force;

SQL> @ctlsql.sql

 

8.打开数据库

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/u01/app/oracle/oradata/demo1/system01.dbf'

 

9.产生错误(因为redo log产生时间晚于控制文件时间),通过指定

relog地址,进行恢复

SQL> recover database using backup controlfile;
ORA-00279: change 505374 generated at 12/14/2011 20:58:35 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/flash_recovery_area/DEMO1/archivelog/2011_12_14/o1_mf_1_1_%u_.ar
c
ORA-00280: change 505374 for thread 1 is in sequence #1


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/u01/app/oracle/oradata/demo1/redo01.log
ORA-00339: archived log does not contain any redo
ORA-00334: archived log: '/u01/app/oracle/oradata/demo1/redo01.log'


SQL> recover database using backup controlfile;
ORA-00279: change 505374 generated at 12/14/2011 20:58:35 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/flash_recovery_area/DEMO1/archivelog/2011_12_14/o1_mf_1_1_%u_.ar
c
ORA-00280: change 505374 for thread 1 is in sequence #1


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/u01/app/oracle/oradata/demo1/redo02.log                  
ORA-00339: archived log does not contain any redo
ORA-00334: archived log: '/u01/app/oracle/oradata/demo1/redo02.log'


SQL> recover database using backup controlfile;
ORA-00279: change 505374 generated at 12/14/2011 20:58:35 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/flash_recovery_area/DEMO1/archivelog/2011_12_14/o1_mf_1_1_%u_.ar
c
ORA-00280: change 505374 for thread 1 is in sequence #1


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/u01/app/oracle/oradata/demo1/redo03.log     
Log applied.
Media recovery complete.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

 

10.打开数据库

SQL> alter database open resetlogs;

Database altered.

 

 

 

原创粉丝点击