目的:在oracle 10.2.0.4 环境中,搭建oracle dg遇到 备库redo不存在的问题,另一位同事搭建oracle 11.2.0.4 dg在备库也遇到同样的问题,如下描述处理过程。
参考
处理流程
1.描述
生产环境dg 10.2.0.4,是由RMAN异机恢复,主库存在的redo路径在备库并未提取创建,也并未rename 日志文件,因此recover databaes完毕之后,其余MRP进程,同步应用日志,发现redo备库不存在,如下是操作日志
2.操作
尝试取消mrp
alter database recover managed standby database cancel;
确认dg角色
SQL> select dbid,name, database_role,open_mode,SWITCHOVER_STATUS,FLASHBACK_ON,PROTECTION_MODE,FORCE_LOGGING from v$database;
DBID NAME DATABASE_ROLE
----------- ---------- --------------------
3xx9 WxxxB PHYSICAL STANDBY
参数调整
SQL> alter system set standby_file_management=manual;
查询日志组状态
SQL> select group# ,thread#,bytes/1024/1024,status from v$log;
GROUP# THREAD# BYTES/1024/1024 STATUS
---------- ---------- --------------- ----------------
111024 CLEARING
211024 CLEARING
311024 CLEARING_CURRENT
411024 CLEARING
511024 CLEARING
611024 CLEARING
711024 CLEARING
811024 CLEARING
8 rows selected.
手工对日志组进行clear后续进行drop 发现报错!
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 1;
alter database drop logfile group 6;
ORA-01624: log 6 needed for crash recovery of instance webdb (thread 1)
ORA-00312: online log 6 thread 1: ‘/oracle/oradata/redolog/redo6.log‘
根据MOS文档,Drop Redo Logs on Standby操作失败!!!
Sync Redo Logs on Primary and Standby 这部分区域存在一句话描述
7. Start Redo Apply:
When using Oracle Database >=10.2.0.1 and LOG_FILE_NAME_CONVERT is configured the online redo logs will
be automatically cleared and physically created when starting recovery.
因此采用上述建议
恢复参数
SQL> alter system set standby_file_management=auto;
设置参数,与主库相同,本次并不做转换
alter system set LOG_FILE_NAME_CONVERT =‘/oracle/oradata/redolog/‘,‘/oracle/oradata/redolog/‘ scope=spfile;
SQL> startup force mount;
重启dg生效参数
开启mrp进程
SQL>recover managed standby database disconnect from session;
观察db_alert
Managed Standby Recovery not using Real Time Apply
parallel recovery started with 16 processes
Tue Nov 2622:57:152019
Waiting for all non-current ORLs to be archived...
Tue Nov 2622:57:152019
Errors in file /oracle/admin/webdb/bdump/webdb_mrp0_13806.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: ‘/oracle/oradata/redolog/redo1.log‘
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Tue Nov 2622:57:152019
操作系统验证-日志存在
[oracle@ytwebdb redolog]$ cd /oracle/oradata/redolog/
[oracle@ytwebdb redolog]$ ls -lrt
total 8388672
-rw-r----- 1 oracle dba 1073742336 Nov 2622:57 redo1.log
-rw-r----- 1 oracle dba 1073742336 Nov 2622:57 redo2.log
-rw-r----- 1 oracle dba 1073742336 Nov 2622:57 redo3.log
-rw-r----- 1 oracle dba 1073742336 Nov 2622:57 redo4.log
原文:https://www.cnblogs.com/lvcha001/p/11939543.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!