时间:2021-07-01 10:21:17 帮助过:55人阅读
Oracle数据库的ORA-01122 ORA-01110 ORA-01207错误
在Windows上保留原来数据库的数据文件、控制文件、重做日志文件
重装Windows系统,重做数据库。
1、 安装Oracle数据库软件
2、 使用Oracle dbca创建一个与原来数据库名称一样的数据库
3、 先备份spfile文件(一般位于$ORACLE_HOME\dbs目录下),生成一个pfile文件(一般位于$ORACLE_HOME\database目录下):
SQL>create pfile from spfile;
4、 修改pfile文件种控制文件的路径。路径指向原来保留数据库的控制文件
5、 启动数据库
SQL>startup
如果数据库启动到mount状态,不能启动到open状态,,通常报下面的错误:
ORA-01122:数据库文件1验证失败
ORA-01110:数据文件1: 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\SYSTEM01.DBF'
ORA-01207:文件比控制文件更新-旧的控制文件
解决:
重建控制文件:
1、 SQL>alter database backup controlfile to trace as‘E:\trace’;
2、 关闭数据库:shutdown immediate
3、 启动:startup nomount
4、 打开‘E:\trace’文件,在数据库命令行种执行下面的语句,重建控制文件
CREATE CONTROLFILE REUSE DATABASE "XBOMS" NORESETLOGS NOARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\REDO01.LOG' SIZE50M,
GROUP 2 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\REDO02.LOG' SIZE50M,
GROUP 3 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\REDO03.LOG' SIZE50M
DATAFILE
'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\SYSTEM01.DBF',
'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\UNDOTBS01.DBF',
'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\SYSAUX01.DBF',
'E:\ORACLE\PRODUCT\10.2.0\ORADATA\XBOMS\USERS01.DBF',
CHARACTER SET ZHS16GBK
;
5、RECOVER DATABASE
6、ALTER DATABASE OPEN;