Oracle 11g DataGuard 日志传输状态监控
Oracle DataGuard的主备库同步,主要是依靠日志传输到备库,备库应用日志或归档来实现。当主、备库间日志传输出现GAP,备库将不再与主库同步。因此需对日志传输状态进行监控,确保主、备库间日志没有GAP,或发现GAP后及时处理。除了在告警日志中查看日志同步情况外,还可以通过查看相关视图来对日志传输状态进行监控。
【实验环境】
操作系统:Red Hat Enterprise Linux Server release 6.8
数据库:Oracle Database 11g Enterprise Edition Release 11.2.0.4
主库 Primary database:绿色
物理备库 Physical standby database:黄色
【实验过程】
1、主、备库查看当前日志状况
select sequence#,status from v$log;
2、备库查看RFS接收日志和MRP应用日志同步主库情况
select process, sequence#, status, delay_mins from v$managed_standby;
3、察看备库是否和主库同步
select sequence#,status from v$log;
select archived_thread#,archived_seq#,applied_thread#,applied_seq# from v$archive_dest_status;
4、备库查看已经归档的redo
elect REGISTRAR,CREATOR,THREAD#,APPLIED,sequence#,first_change#,next_change#, COMPLETION_TIME from v$archived_log;
5、备库查看已经应用的redo
select thread#,sequence#,first_change#,next_change# from v$log_history;
6、主、备库查看是否有gap
select status,gap_status from v$archive_dest_status where dest_id=2;
备库查看
select * from v$archive_gap;
【实验总结】
通过上面这6种方法,都可以对主备库间日志传输情况进行监控。
如果日志传输出现代沟(GAP),就需要及时排查问题,必要时还可以采取手工处理GAP措施。