今天 redo 的路径不对, 导致 dataguard 备库的 不能open:ora-01275: 自动进行备用文件管理时, 不允许进行 add logfile 操作
今天 redo 的路径不对, 导致 dataguard 备库的 不能open:
ora-01275: 自动进行备用文件管理时, 不允许进行 add logfile 操作
下面来说一下:
先看一下备库的信息:
sql> select switchover_status from v$database;
switchover_status
--------------------
recovery needed
sql> select database_role , open_mode from v$database;
database_role open_mode
---------------- ----------
physical standby mounted
sql> alter database recover managed standby database cancel;
alter database recover managed standby database cancel
*
第 1 行出现错误:
ora-16136: ?
sql> alter database recover managed standby database disconnect from session;
数据库已更改。
sql> alter database open;
alter database open
*
第 1 行出现错误:
ora-16004: ?
ora-01152: 1 ?
ora-01110: 1: 'c:\oracle\product\10.2.0\oradata\sheng\system01.dbf'
检查一下alert 日志:
发现undo 文件没有从主库上copy 到备库:
----------------
把primary 上的undospace copy 到standby 上后:
sql> alter database recover managed standby database disconnect from session;
数据库已更改。
sql> alter database open;
alter database open
*
第 1 行出现错误:
ora-01154: , , ?
检查一下备库的alert 日志:
clearing online redo logfile 1 d:\oracle\product\10.2.0\oradata\sheng\redo01.log
clearing online log 1 of thread 1 sequence number 11
sat dec 31 10:14:26 2011
errors in file c:\oracle\product\10.2.0\admin\sheng\bdump\sheng_mrp0_1724.trc:
ora-00313: open failed for members of log group 1 of thread 1
ora-00312: online log 1 thread 1: 'd:\oracle\product\10.2.0\oradata\sheng\redo01.log'
ora-27041: unable to open file
osd-04002: 无法打开文件
o/s-error: (os 21) 设备未就绪。
sat dec 31 10:14:26 2011
errors in file c:\oracle\product\10.2.0\admin\sheng\bdump\sheng_mrp0_1724.trc:
ora-19527: physical standby redo log must be renamed
ora-00312: online log 1 thread 1: 'd:\oracle\product\10.2.0\oradata\sheng\redo01.log'
看一下备库上的redo :
sql> set wrap off
sql> select * from v$logfile;
行将被截断
group# status type member
---------- ------- ------- -----------------------------------------------------
3 online d:\oracle\product\10.2.0\oradata\sheng\redo03.log
2 online d:\oracle\product\10.2.0\oradata\sheng\redo02.log
1 online d:\oracle\product\10.2.0\oradata\sheng\redo01.log
很明显,备机上没有相关联的路径:
好,,下面进行redo log 的重建和 standby redo log 的重建:
sql> alter database drop logfile group 1;
alter database drop logfile group 1
*
第 1 行出现错误:
ora-01156:
ora-01156:
ora-01275: 自动进行备用文件管理时, 不允许进行 add logfile 操作。
关闭数据库,在开启状态下。将auto修改成manual
sql>alter system set standby_file_management=manual
alter database rename 'd:\oracle\product\10.2.0\oradata\sheng\redo03.log' to 'c:\oracle\product\10.2.0\oradata\sheng\redo03.log';
alter database rename 'd:\oracle\product\10.2.0\oradata\sheng\redo01.log' to 'c:\oracle\product\10.2.0\oradata\sheng\redo01.log';
alter database rename 'd:\oracle\product\10.2.0\oradata\sheng\redo02.log' to 'c:\oracle\product\10.2.0\oradata\sheng\redo02.log';
在添加:
sql> alter database add standby logfile group 4 ('c:\oracle\product\10.2.0\oradata\orcl\redo04.log') size 50m;
sql> alter database add standby logfile group 5 ('c:\oracle\product\10.2.0\oradata\orcl\redo05.log') size 50m;
sql> alter database add standby logfile group 6 ('c:\oracle\product\10.2.0\oradata\orcl\redo06.log') size 50m;
sql> alter database add standby logfile group 7 ('c:\oracle\product\10.2.0\oradata\orcl\redo07.log') size 50m;
sql> select * from v$logfile;
group# status type member
---------- ------- ------- -----------------------------------------------------
3 online c:\oracle\product\10.2.0\oradata\sheng\redo03.log
2 online c:\oracle\product\10.2.0\oradata\sheng\redo02.log
1 online c:\oracle\product\10.2.0\oradata\sheng\redo01.log
4 standby c:\oracle\product\10.2.0\oradata\sheng\redo04.log
5 standby c:\oracle\product\10.2.0\oradata\sheng\redo05.log
6 standby c:\oracle\product\10.2.0\oradata\sheng\redo06.log
7 standby c:\oracle\product\10.2.0\oradata\sheng\redo07.log
已选择7行。