dg同步后RFS进程起不来,归错于ORA-00604和ORA-16000
SQL> set lines 1000 SQL> select PROCESS,PID,STATUS, GROUP# , RESETLOG_ID,THREAD#,SEQUENCE# from v$managed_standby; PROCESS PID STATUS GROUP# RESETLOG_ID THREAD# SEQUENCE# --------- ---------- ------------ ---------------------------------------- ----------- ---------- ---------- ARCH 3965 CONNECTED N/A 0 0 0 ARCH 3969 CONNECTED N/A 0 0 0 ARCH 3973 CONNECTED N/A 0 0 0 ARCH 3977 CONNECTED N/A 0 0 0 MRP0 6708 APPLYING_LOG N/A 918146907 1 107387
查看日志
Errors in file /u01/app/oracle/diag/rdbms/yjzddbdg/yjzddb1/trace/yjzddb1_ora_4111.trc: ORA-00604: error occurred at recursive SQL level 1 ORA-16000: database open for read-only access
找出隐藏参数_system_trig_enabled,先使他不起作用,在重新同步,可以看到RFS进程起来了。
SQL> alter system set "_system_trig_enabled"=false; System altered. SQL> recover managed standby database cancel; Media recovery complete. SQL> recover managed standby database using current logfile disconnect; Media recovery complete. SQL> set lines 1000 SQL> select PROCESS,PID,STATUS, GROUP# , RESETLOG_ID,THREAD#,SEQUENCE# from v$managed_standby; PROCESS PID STATUS GROUP# RESETLOG_ID THREAD# SEQUENCE# --------- ---------- ------------ ---------------------------------------- ----------- ---------- ---------- ARCH 3965 CONNECTED N/A 0 0 0 ARCH 3969 CONNECTED N/A 0 0 0 ARCH 3973 CONNECTED N/A 0 0 0 ARCH 3977 CONNECTED N/A 0 0 0 MRP0 23687 APPLYING_LOG N/A 918146907 1 107401 RFS 23964 IDLE N/A 0 0 0 RFS 23960 IDLE N/A 0 0 0 RFS 23968 IDLE N/A 0 0 0 RFS 23955 IDLE 5 918146907 1 107401 9 rows selected.
在rac的所有节点都做该操作,等DG切换完成后记得在所有节点重新使该隐藏参数生效。
SQL> alter system set "_system_trig_enabled"=true; System altered.
