数据库出现ORA-00283/ORA-01610的问题
问题应该是控制文件中的检查点信息与system01没有保持一致的原因,但不知如何去恢复问题描述:
第一步:
在做试验的过程中,先shutdown abort数据库
SQL> shutdown abort;
ORACLE 例程已经关闭。
SQL> startup nomount;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE 例程已经启动。
Total System Global Area 289406976 bytes
Fixed Size 1248624 bytes
Variable Size 88081040 bytes
Database Buffers 192937984 bytes
Redo Buffers 7139328 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS ARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 'E:ORACLEPRODUCT10.2.0ORADATAORCLREDO01.LOG' SIZE 50M,
9 GROUP 2 'E:ORACLEPRODUCT10.2.0ORADATAORCLREDO02.LOG' SIZE 50M,
10 GROUP 3 'E:ORACLEPRODUCT10.2.0ORADATAORCLREDO03.LOG' SIZE 50M
11 -- STANDBY LOGFILE
12 DATAFILE
13 'E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF',
14 'E:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF',
.......
25 CHARACTER SET ZHS16GBK
26 ;
控制文件已创建。
第二步:
这时便出现了如下的错误。
SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-01610: 使用 BACKUP CONTROLFILE 选项的恢复必须已完成
我重新关闭数据库
SQL> startup mount;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE 例程已经启动。
Total System Global Area 289406976 bytes
Fixed Size 1248624 bytes
Variable Size 88081040 bytes
Database Buffers 192937984 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
SQL> alter database open resetlogs;
alter database open resetlogs
*
第 1 行出现错误:
ORA-01194: 文件 1 需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF'
做到这里,我便不知如何去处理了,请各位帮着看看,是什么问题,谢了
已经干净的关闭数据库了。
但仍出现上面的错误。采用这样的方式恢复 但我这里即找不到归档日志。(选择cancel时会报下面的错)
ORA-01112: 未启动介质恢复
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 6388485 (在 06/22/2008 14:45:49 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2008_06_22O1_MF_1_9_%
ORA-00280: 更改 6388485 (用于线程 1) 在序列 #9 中
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
auto
ORA-00308: 无法打开归档日志 'E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2008_06_22
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
重新创建了控制文件,采用noresetlogs的方式,可以了,但用resetlogs方式仍然不可以,不知道为什么?
--采用noresetlogs的方式恢复数据库步骤如下:
SQL> startup nomount;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE 例程已经启动。
Total System Global Area 289406976 bytes
Fixed Size 1248624 bytes
Variable Size 88081040 bytes
Database Buffers 192937984 bytes
Redo Buffers 7139328 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 'E:ORACLEPRODUCT10.2.0ORADATAORCLREDO01.LOG' SIZE 50M,
9 GROUP 2 'E:ORACLEPRODUCT10.2.0ORADATAORCLREDO02.LOG' SIZE 50M,
10 GROUP 3 'E:ORACLEPRODUCT10.2.0ORADATAORCLREDO03.LOG' SIZE 50M
11 -- STANDBY LOGFILE
12 DATAFILE
13 'E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF',
14 'E:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF',
15 'E:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF',
16 'E:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF',
17 'E:ORACLEPRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF',
18 'E:ORACLEPRODUCT10.2.0ORADATAORCLFTITEM10G01',
19 'E:ORACLEPRODUCT10.2.0ORADATAORCLEYGLE01.DBF',
20 'E:ORACLEPRODUCT10.2.0ORADATAORCLFTTEST01',
21 'E:ORACLEPRODUCT10.2.0ORADATAORCLUSERS02.DBF',
22 'E:ORACLEPRODUCT10.2.0ORADATAORCL 32XF1.DBF',
23 'E:ORACLEPRODUCT10.2.0ORADATAORCL 32XF2.DBF',
24 'E:ORACLEPRODUCT10.2.0ORADATAORCLTZX01.DBF'
25 CHARACTER SET ZHS16GBK
26 ;
控制文件已创建。
SQL> recover database;
完成介质恢复。
SQL> alter database open;
数据库已更改。
特别的奇怪,我这里的归档日志中要求的是日志文件不存在
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2008_06_22O1_MF_1_9_45W1NQDP_.ARC
ORA-00310: 归档日志包含序列 9; 要求序列 10
ORA-00334: 归档日志:
'E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAORCLARCHIVELOG2008_06_22O1_MF_1
_9_45W1NQDP_.ARC'
页:
[1]