oracle ora 01207,解决ORA-01207“文件比控制文件更新 - 旧的控制文件”的问题
ORA-01122:数据库文件1验证失败ORA-01110:数据文件1: 'E:ORACLEORADATADB02SYSTEM01.DBF'ORA-01207:文件比控制文件更新-旧的控制文件我备份一下数据库的控制文件,以及一个数据文件xyc.dbf。其中,xyc.dbf是用户xyc的默认表空间。赋予足够的对象权限:Grant select any talbe to xyc;以xyc登陆:Conn
ORA-01122:数据库文件1验证失败ORA-01110:数据文件1: 'E:ORACLEORADATADB02SYSTEM01.DBF'
ORA-01207:文件比控制文件更新-旧的控制文件
我备份一下数据库的控制文件,以及一个数据文件xyc.dbf。其中,xyc.dbf是用户xyc的默认表空间。
赋予足够的对象权限:
Grant select any talbe to xyc;
以xyc登陆:
Conn xyc/admin;
Create table emps as select * from scott.emp;
Conn sys/admin as sysdba;
Shutdown immediate;
这时,我把备份的控制文件和数据文件copy到原来目录。启动数据库:
Startup force;
结果数据库提示:
ORA-01122:数据库文件1验证失败ORA-01110:数据文件1: 'E:ORACLEORADATADB02SYSTEM01.DBF'
ORA-01207:文件比控制文件更新-旧的控制文件
这时候,需要重建控制文件:
alter database backup controlfile to trace as 'f:aa';
这时候,用ue打开f:aa,选取符合数据库的代码做成脚本controlfile.sql:执行该脚本:
@controlfile.sql
SQL> alter database open resetlogs;
alter database open resetlogs
*
第1行出现错误:
ORA-01152:文件1没有从过旧的备份中恢复
ORA-01110:数据文件1: 'D:ORACLE10.2.0ORADATAORCLSYSTEM01.DBF'
SQL> alter database open nosetlogs;
alter database open nosetlogs
*
第1行出现错误:
ORA-02288:无效的OPEN模式
SQL> alter database open setlogs;
alter database open setlogs
*
第1行出现错误:
ORA-02288:无效的OPEN模式
SQL> alter database open resetlogs;
alter database open resetlogs
*
第1行出现错误:
ORA-01152:文件1没有从过旧的备份中恢复
ORA-01110:数据文件1: 'D:ORACLE10.2.0ORADATAORCLSYSTEM01.DBF'
SQL> recover database using backup controlfile;
ORA-00279:更改781657 (在03/13/2009 20:54:59生成)对于线程1是必需的
ORA-00289:建议:
D:ORACLE10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2009_03_14O1_MF_1_26_%U_.A
RC
ORA-00280:更改781657 (用于线程1)在序列#26中
指定日志: {=suggested | filename | AUTO | CANCEL}
D:oracle10.2.0flash_recovery_areaORCLARCHIVELOG2009_03_12O1_MF_1_25_4VL33
L89_.ARC
ORA-00310:归档日志包含序列25;要求序列26
ORA-00334:归档日志:
'D:ORACLE10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2009_03_12O1_MF_1_25_4VL3
3L89_.ARC'
SQL> alter database open resetlogs;
alter database open resetlogs
*
第1行出现错误:
ORA-01113:文件1需要介质恢复
ORA-01110:数据文件1: 'D:ORACLE10.2.0ORADATAORCLSYSTEM01.DBF'
SQL> recover database using backup controlfile;
ORA-00279:更改781657 (在03/13/2009 20:54:59生成)对于线程1是必需的
ORA-00289:建议:
D:ORACLE10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2009_03_14O1_MF_1_26_%U_.A
RC
ORA-00280:更改781657 (用于线程1)在序列#26中
指定日志: {=suggested | filename | AUTO | CANCEL}
D:oracle10.2.0oradataorclREG003B.LOG
ORA-00310:归档日志包含序列25;要求序列26
ORA-00334:归档日志: 'D:ORACLE10.2.0ORADATAORCLREG003B.LOG'
SQL> recover database using backup controlfile;
ORA-00279:更改781657 (在03/13/2009 20:54:59生成)对于线程1是必需的
ORA-00289:建议:
D:ORACLE10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2009_03_14O1_MF_1_26_%U_.A
RC
ORA-00280:更改781657 (用于线程1)在序列#26中
指定日志: {=suggested | filename | AUTO | CANCEL}
D:oracle10.2.0oradataorclREDO02.LOG
ORA-00310:归档日志包含序列24;要求序列26
ORA-00334:归档日志: 'D:ORACLE10.2.0ORADATAORCLREDO02.LOG'
SQL> recover database using backup controlfile;
ORA-00279:更改781657 (在03/13/2009 20:54:59生成)对于线程1是必需的
ORA-00289:建议:
D:ORACLE10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2009_03_14O1_MF_1_26_%U_.A
RC
ORA-00280:更改781657 (用于线程1)在序列#26中
指定日志: {=suggested | filename | AUTO | CANCEL}
D:oracle10.2.0oradataorclREDO01.LOG
已应用的日志。
完成介质恢复。
SQL> alter database open resetlogs;
数据库已更改。
SQL> conn xyc/admin;
已连接。
SQL> select table_name from user+tables;
select table_name from user+tables
*
第1行出现错误:
ORA-00903:表名无效
SQL> select table_name from user_tables;
TABLE_NAME
------------------------------
DEPT3
DEPT4
DEPT5
DEPT6
EMPS
DEPT
EMP
已选择7行。
至此,表emps恢复。
[@more@]
ORA-01122:数据库文件1验证失败ORA-01110:数据文件1: 'E:ORACLEORADATADB02SYSTEM01.DBF'
ORA-01207:文件比控制文件更新-旧的控制文件

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)