ORA-01152错误解决方法 用老的备份controlfile

SQL> startup;

ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE instance started.

Total System Global Area 293601280 bytes
Fixed Size 1248600 bytes
Variable Size 96469672 bytes
Database Buffers 188743680 bytes
Redo Buffers 7139328 bytes
Database mounted.

ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: 'L:/ORACLE/PRODUCT/10.2.0/ORADATA/ORC2/SYSTEM01.DBF'


SQL> select checkpoint_change# from v$database;

CHECKPOINT_CHANGE#
------------------

           4532411



SQL> select checkpoint_change# from v$datafile;

CHECKPOINT_CHANGE#
------------------

           4532411
           4532411
           4532411
           4532411
           4532411
           4532411
           4532411
           4532411
           4664735

9 rows selected.

SQL> select checkpoint_change# from v$datafile_header;

CHECKPOINT_CHANGE#
------------------

           4711164
           4711164
           4711164
           4711164
           4711164
           4711164
           4711164
           4711164
           4664735

9 rows selected.


SQL> recover database using backup controlfile until cancel;
ORA-00279: change 4697108 generated at 12/24/2007 11:48:57 needed for thread 1
ORA-00289: suggestion :
L:/ORACLE/PRODUCT/10.2.0/ORADATA/ORC2/ARCHIVEARC00007_0641832494.001
ORA-00280: change 4697108 for thread 1 is in sequence #7


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: 'L:/ORACLE/PRODUCT/10.2.0/ORADATA/ORC2/SYSTEM01.DBF'


ORA-01112: media recovery not started


SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: 'L:/ORACLE/PRODUCT/10.2.0/ORADATA/ORC2/SYSTEM01.DBF'



SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile;

System altered.

SQL> recover database using backup controlfile until cancel;
ORA-00279: change 4697108 generated at 12/24/2007 11:48:57 needed for thread 1
ORA-00289: suggestion :
L:/ORACLE/PRODUCT/10.2.0/ORADATA/ORC2/ARCHIVEARC00007_0641832494.001
ORA-00280: change 4697108 for thread 1 is in sequence #7


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: 'L:/ORACLE/PRODUCT/10.2.0/ORADATA/ORC2/SYSTEM01.DBF'


ORA-01112: media recovery not started

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced


SQL> startup force;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE instance started.

Total System Global Area 293601280 bytes
Fixed Size 1248600 bytes
Variable Size 96469672 bytes
Database Buffers 188743680 bytes
Redo Buffers 7139328 bytes
Database mounted.
Database opened.


SQL> select checkpoint_change# from v$database;

CHECKPOINT_CHANGE#
------------------

           4717118

SQL> select checkpoint_change# from v$datafile;

CHECKPOINT_CHANGE#
------------------

           4717118
           4717118
           4717118
           4717118
           4717118
           4717118
           4717118
           4717118
           4664735

9 rows selected.

SQL> select checkpoint_change# from v$datafile_header;

CHECKPOINT_CHANGE#
------------------

           4717118
           4717118
           4717118
           4717118
           4717118
           4717118
           4717118
           4717118
                 0

9 rows selected.

SQL> select last_change# from v$datafile;

LAST_CHANGE#
------------









     4664735

9 rows selected.



具体步骤如下:
startup force;
alter system set "_allow_resetlogs_corruption"=true scope=spfile;
recover database using backup controlfile until cancel;
alter databse open resetlogs;

 

from:http://blog.chinaunix.net/u1/40772/showart_461660.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ORA-00283 和 ORA-01610 错误都与恢复操作有关。 ORA-00283 错误表示恢复会话因为错误而被取消。这个错误通常是由于恢复过程中出现了其他错误,导致恢复过程无法继续而被取消。 ORA-01610 错误表示使用 BACKUP CONTROLFILE 选项的恢复必须已经完成。这个错误通常是由于在执行恢复操作之前没有备份好控制文件,或者备份的控制文件不完整所致。 针对这两个错误,你可以尝试以下步骤进行恢复: 1. 确认恢复操作的日志文件,可以使用命令 `SELECT * FROM V$RECOVERY_FILE_STATUS` 来查看恢复操作的日志文件,并检查是否存在错误。 2. 如果日志文件正常,可以尝试使用命令 `RECOVER DATABASE` 来继续恢复操作。如果恢复过程中出现了其他错误,可以根据错误提示进一步修复。 3. 如果备份的控制文件不完整或者备份之前没有备份控制文件,可以使用备份控制文件的方式进行恢复。可以使用命令 `STARTUP NOMOUNT PFILE=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/init.ora;` 将数据库启动到 nomount 状态,然后使用命令 `RESTORE CONTROLFILE FROM '/backup/controlfile.bak';` 恢复控制文件。 4. 在完成控制文件恢复之后,可以使用命令 `ALTER DATABASE MOUNT;` 将数据库挂载到 mount 状态,然后使用命令 `RECOVER DATABASE;` 恢复数据库。 需要注意的是,在进行恢复操作时,一定要备份好数据库文件,并且在操作过程中要小心谨慎,以免造成数据的进一步损害。同时,也要注意在恢复操作之前备份好控制文件等重要的数据库文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值