Oracle ADG 日常巡检指南
一、基础状态检查
- 
数据库角色与模式 SELECT db_unique_name, open_mode, database_role, switchover_status FROM v$database;预期状态: - 主库:OPEN_MODE=READ WRITE,DATABASE_ROLE=PRIMARY
- 备库:OPEN_MODE=READ ONLY WITH APPLY,DATABASE_ROLE=PHYSICAL STANDBY
 
- 主库:
- 
ADG配置有效性 SHOW PARAMETER log_archive_dest_2; -- 检查归档目标状态 SHOW PARAMETER log_archive_config; -- 检查DG配置
二、日志同步健康检查
- 
主备库归档一致性 -- 主备库均执行: SELECT THREAD#, MAX(SEQUENCE#) FROM v$archived_log WHERE resetlogs_change# = (SELECT resetlogs_change# FROM v$database_incarnation WHERE status='CURRENT') GROUP BY THREAD#;要求:主备库的 MAX(SEQUENCE#)差值应≤1(允许轻微延迟)。
- 
检查GAP缺口 -- 备库执行: SELECT * FROM v$archive_gap; -- 有返回结果说明存在GAP处理方案: - 若返回THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE#,需从主库拷贝缺失归档到备库并注册:ALTER DATABASE REGISTER PHYSICAL LOGFILE '/path/to/archive_log_seq90.arc';
 
- 若返回
- 
传输与应用延迟监控 -- 备库执行: SELECT name, value, time_computed FROM v$dataguard_stats WHERE name IN ('transport lag', 'apply lag');阈值建议: transport lag(传输延迟)与apply lag(应用延迟)均需 ≤ 5分钟。
三、进程与错误监控
- 
关键进程状态 SELECT process, status, sequence#, thread# FROM v$managed_standby;关键进程说明: 进程 主库角色 备库角色 正常状态 LNS 存在 不存在 WRITINGMRP0 不存在 存在 APPLYING_LOG异常状态处理: - MRP0状态为WAIT_FOR_GAP:检查是否存在归档缺口(参考第二节)。
- MRP0状态为WAIT_FOR_LOG:主库日志传输异常。
 
- MRP0状态为
- 
归档传输错误 -- 主库执行: SELECT dest_name, status, error FROM v$archive_dest_status WHERE dest_id = 2; -- 对应备库的归档目标严重错误: STATUS=ERROR或ERROR字段非空(如ORA-12170网络超时)。
四、常见问题定位
- 
未应用日志检查(备库) SELECT thread#, COUNT(*) FROM v$archived_log WHERE applied='NO' GROUP BY thread#;处理:若积压持续增长,检查MRP0进程是否停滞。 
- 
日志传输阻塞(主库) -- 主库检查未发送日志量: WITH arch AS (SELECT thread#, MAX(sequence#) arch_seq FROM gv$managed_standby WHERE process='ARCH' GROUP BY thread#),lns AS (SELECT thread#, MAX(sequence#) lns_seq FROM gv$managed_standby WHERE process='LNS' GROUP BY thread#) SELECT a.thread#, l.lns_seq - a.arch_seq AS unsent_logs FROM arch a, lns l WHERE a.thread# = l.thread#;阈值: unsent_logs > 10需排查网络或存储性能。
- 
归档删除策略 
 重要原则:- ❌ 禁止在备库强制删除未应用的归档(DELETE FORCE)!
- 若备库空间不足:-- 主库临时停止传输(缓解压力): ALTER SYSTEM SET log_archive_dest_state_2=DEFER; -- 空间释放后恢复: ALTER SYSTEM SET log_archive_dest_state_2=ENABLE;
 
- ❌ 禁止在备库强制删除未应用的归档(
五、巡检总结清单
| 类别 | 检查项 | 频率 | 异常处理 | 
|---|---|---|---|
| 基础状态 | 数据库角色与模式 | 每日 | 检查 switchover_status | 
| 日志同步 | 归档序列一致性 | 每小时 | 补注册缺失归档 | 
| 日志同步 | 传输与应用延迟 | 每小时 | 监控 v$dataguard_stats | 
| 进程健康 | LNS/MRP0进程状态 | 每小时 | 重启进程或排查GAP | 
| 错误监控 | 归档传输错误 | 每日 | 检查网络/存储日志 | 
| 空间管理 | 归档未应用量 | 每日 | 避免强制删除,主库暂断传输 | 
关键提示:
- 主备切换(Switchover/Failover)后必须重新验证所有巡检项。
- 发现
UNRESOLVABLE GAP需立即人工干预。- 备库的
_system_trig_enabled参数应为FALSE(避免触发器重复执行)。
附:进程状态速查表
| MRP0状态 | 含义 | 紧急度 | 
|---|---|---|
| APPLYING_LOG | 正常应用日志 | 正常 | 
| WAIT_FOR_GAP | 等待缺失日志 | 警告 | 
| WAIT_FOR_LOG | 等待新日志传输 | 警告 | 
| NOT ALLOWED | 配置错误/角色异常 | 严重 | 
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/952074.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!