- 最后登录
- 2017-5-4
- 在线时间
- 81 小时
- 威望
- 999
- 金钱
- 2391
- 注册时间
- 2013-9-11
- 阅读权限
- 150
- 帖子
- 1124
- 精华
- 5
- 积分
- 999
- UID
- 1220
|
1#
发表于 2017-4-17 11:30:26
|
查看: 1898 |
回复: 0
数据库原为归档日志模式,因为redolog日志文件有坏块,启动不起来了,删掉了原来的relog01.log等三个日志文件,重新创建了大小不一样的redolog,后来发现启不来,又重新生成了与原来一样大小的redolog,改档日志模式从归档到非归档,启动不来后,又重新了控制文件,改回了归档,现在库里面没有有效的备份,数据文件的SCN与控制文件的SCN不同了,我怎么能启动到OPEN状态呢?
SQL> recover database using backup controlfile;
ORA-00279: 更改 5439148 (在 11/06/2006 05:32:14 生成) 对于线程 1 是必需的
ORA-00289: 建议: /home/oracle/product/9.2.0/dbs/arch1_1.dbf
ORA-00280: 更改 5439148 对于线程 1 是按序列 # 1 进行的
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
Media recovery cancelled.
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01113: 文件 1 需要介质恢复
ORA-01110: 数据文件 1: '/home/oracle/oradata/ocpdb/system01.dbf'
现在执行recover 提示我必须要用reset log 启到open,可是我没办法OPEN了啊.
SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-01610: 使用 BACKUP CONTROLFILE 选项的恢复必须已完成
SQL> !oerr ora 01610
01610, 00000, "recovery using the BACKUP CONTROLFILE option must be done"
// *Cause: Either an earlier database recovery session specified BACKUP
// CONTROLFILE, or the controlfile was recreated with the RESETLOGS
// option, or the controlfile being used is a backup controlfile.
// After that only BACKUP CONTROLFILE recovery is allowed
// and it must be followed by a log reset at the next database open.
// *Action: Perform recovery using the BACKUP CONTROFILE option.
SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-01610: 使用 BACKUP CONTROLFILE 选项的恢复必须已完成
楼上的大哥,我也晕了哦,他不提示我是AUTO还是CANCEL啊.
是我们下面一省局的数据库redolog丢掉了,我原来是归档的了,为了模拟它们的现象,我改成了非归档,又删了redolog,重启了一次,用resetlog,忘了做全备了,就又DOWN掉后,再删了一次,这下玩儿完了,就再也启不来了.
SQL> recover database using backup controlfile until cancel;[/COLOR]
ORA-00279: 更改 5439148 (在 11/06/2006 05:32:14 生成) 对于线程 1 是必需的
ORA-00289: 建议: /home/oracle/product/9.2.0/dbs/arch1_1.dbf
ORA-00280: 更改 5439148 对于线程 1 是按序列 # 1 进行的
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: '/home/oracle/oradata/ocpdb/system01.dbf'
ORA-01112: 未启动介质恢复
真的是这样做了,我知道事情复杂了,所以来求救了.这下麻烦大了.
是它们的redolog日志文件有坏块儿了.他们的库没有删redolog,我是为了模仿它们,把我的环境的redolog给删了.
现在的麻烦就是,两边都曾经resetlogs启来过一次了,而且启动后没有做export等物理或者逻辑备份.面临无法启动的危险!!!
我是在测试环境上的,但他们是生产环境,clear做过了,就是clear之后重启成功的,resetlogs第一次成功了,现在是第二次resetlogs启不来了.
楼上的兄弟,控制文件也是删了重建了N次了哦. 你看我贴的日志
SQL> startup nomount;
ORACLE instance started.
Total System Global Area| 269554828|bytes
Fixed Size | 451724|bytes
Variable Size | 134217728|bytes
Database Buffers | 134217728|bytes
Redo Buffers | 667648|bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "OCPDB" RESETLOGS ARCHIVELOG
-- SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GR 2 3 4 5 6 7 8 9 OUP 1 '/home/oracle/oradata/ocpdb/redo01.log' SIZE 100M,
GROUP 2 '/home/oracle/oradata/ocpdb/redo02.log' SIZE 100M,
GROUP 3 '/home/oracle/oradata/ocpdb/redo03.log' SIZE 100M
-- STANDBY LOGFILE
DATAFIL 10 11 12 13 E
14 '/home/oracle/oradata/ocpdb/system01.dbf',
'/home/oracle/oradata/ocpdb/undotbs1.dbf',
'/home/oracle/oradata/ocpdb/cwmlite01.dbf',
'/home/oracle/oradata/ocpdb/drsys01.dbf',
'/home/oracle/oradata/ocpdb/example01.dbf',
'/ 15 16 17 18 19 home/oracle/oradata/ocpdb/indx01.dbf',
20 '/home/oracle/oradata/ocpdb/odm01.dbf',
21 '/home/oracle/oradata/ocpdb/tools01.dbf',
22 '/home/oracle/oradata/ocpdb/users01.dbf',
23 '/home/oracle/oradata/ocpdb/xdb01.dbf',
24 '/home/oracle/oradata/ocpdb/perfstat.dbf',
25 '/home/oracle/oradata/ocpdb/users02.dbf',
26 '/home/oracle/oradata/ocpdb/hwm.dbf',
27 '/home/oracle/oradata/ocpdb/users03.dbf',
28 '/home/oracle/oradata/ocpdb/snap2.dbf',
29 '/home/oracle/oradata/ocpdb/defaultsp.dbf',
30 '/home/oracle/oradata/ocpdb/snap3.dbf'
31 CHARACTER SET ZHS16GBK
32 ;
Control file created.
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 5439148 (在 11/06/2006 05:32:14 生成) 对于线程 1 是必需的
ORA-00289: 建议: /home/oracle/product/9.2.0/dbs/arch1_1.dbf
ORA-00280: 更改 5439148 对于线程 1 是按序列 # 1 进行的
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: '/home/oracle/oradata/ocpdb/system01.dbf'
ORA-01112: 未启动介质恢复
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: '/home/oracle/oradata/ocpdb/system01.dbf'
|
|