news 2026/5/8 17:06:35

Data Guard 归档传输 GAP 排查与修复

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Data Guard 归档传输 GAP 排查与修复

Data Guard 归档传输 GAP 排查与修复

一、问题现象

主备库v$managed_standby显示:

主库 LNS WRITING sequence 480 -- 实时 redo 在传 主库 ARCH CLOSING sequence 478 -- 主库已归档 备库 RFS IDLE sequence 480 -- 备库已收到当前 redo 备库 MRP0 WAIT_FOR_GAP sequence 469 ← apply 卡在 469

判断:实时 redo 流(LNS → RFS)通;归档传输(ARCH 路径)从 469 之后断开,备库 apply 进程卡住。


二、诊断步骤

1. 备库确认归档接收情况

-- 备库SELECT*FROMv$archive_gap;SELECTsequence#, applied, archived, deleted, nameFROMv$archived_logWHEREsequence# BETWEEN 466 AND 480ORDERBYsequence#;

备库v$archive_gap可能为空——MRP0 在等但 FAL 还没主动发现。
备库归档只到 468,469 之后未到达。

2. 主库确认本地归档与传输状态

-- 主库SELECTsequence#, applied, archived, deleted, nameFROMv$archived_logWHEREsequence# BETWEEN 466 AND 480ORDERBYsequence#;

主库 469-479 都在本地,但传到 dest_2 的记录从 469 开始缺失。

-- 主库查 dest_2 状态SELECTdest_id,status,error,gap_status,db_unique_name,archived_seq#, applied_seq#FROMv$archive_dest_statusWHEREdest_id=2;

报错示例:

STATUS: ERROR ERROR : ORA-00270: error creating archive log GAP_STATUS: RESOLVABLE GAP

3. 看备库 alert log 找具体子错误

tail-500$ORACLE_BASE/diag/rdbms/<dbname>/<sid>/trace/alert_<sid>.log|grep-A5"ORA-00270"

常见子错误:

子错误含义
ORA-15041: diskgroup space exhaustedASM 磁盘组满
ORA-19809: limit exceeded for recovery filesFRA 满
ORA-19504 / ORA-17502路径不存在 / 权限问题
ORA-16191密码文件不一致

三、根因定位

ORA-00270 = 主库往备库写归档时,备库这一端创建文件失败。
主备网络通(否则报 12541 / 12154),问题在备库的归档落地路径或空间。


四、修复

路径 A:备库归档目的地空间不足

-- 备库查 ASM 磁盘组SELECTname,total_mb,free_mb,ROUND(free_mb/total_mb*100,2)ASpct_freeFROMv$asm_diskgroup;-- 看 FRA 占用SELECT*FROMv$recovery_area_usage;

清理过期归档:

rman target / RMAN>DELETE NOPROMPT ARCHIVELOG ALL COMPLETED BEFORE'sysdate-3';

或扩 FRA:

ALTERSYSTEMSETdb_recovery_file_dest_size=200G SCOPE=BOTH;

路径 B:手动补归档(最稳,不依赖传输修复)

# 主库上把缺失的归档拷贝到备库scp'+DATA01/CCRB06/ARCHIVELOG/.../thread_1_seq_469.dbf'\oracle@standby:/u01/archive/# 469 到 479 都拷过去
-- 备库逐个注册ALTERDATABASEREGISTER LOGFILE'/u01/archive/thread_1_seq_469.dbf';ALTERDATABASEREGISTER LOGFILE'/u01/archive/thread_1_seq_470.dbf';...

注册完 MRP0 自动开始 apply。

路径 C:触发主库重传(修复传输问题后)

-- 主库ALTERSYSTEMSETLOG_ARCHIVE_DEST_STATE_2=DEFER;ALTERSYSTEMSETLOG_ARCHIVE_DEST_STATE_2=ENABLE;-- 强制切换日志触发归档ALTERSYSTEM ARCHIVE LOGCURRENT;

五、修复后验证

-- 主库SELECTdest_id,status,error,archived_seq#, applied_seq#FROMv$archive_dest_statusWHEREdest_id=2;-- 备库SELECTprocess,status,sequence#FROMv$managed_standbyWHEREprocessIN('MRP0','RFS');SELECT*FROMv$archive_gap;

期望

  • 主库 dest_2 STATUS =VALID,error 为空
  • 备库 MRP0 状态从WAIT_FOR_GAP变成APPLYING_LOG
  • archived_seq# 与 applied_seq# 持续追平

附:常用诊断 SQL 速查

-- 备库 apply 进度SELECTsequence#, applied FROM v$archived_logWHEREapplied='YES'ORDERBYsequence# DESC;-- 主备 lagSELECTname,value,time_computedFROMv$dataguard_statsWHEREnameIN('transport lag','apply lag');-- Broker 全局状态(如启用)-- DGMGRL> SHOW CONFIGURATION VERBOSE;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 17:05:57

实测 Taotoken 多模型 API 的响应延迟与稳定性观感

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 实测 Taotoken 多模型 API 的响应延迟与稳定性观感 对于需要集成大模型能力的开发者而言&#xff0c;除了模型本身的能力&#xff…

作者头像 李华
网站建设 2026/5/8 17:04:45

HarmonyOS 6学习:Web组件显隐陷阱与长截图时序重构

在HarmonyOS 6的AI助手类应用中&#xff0c;Web组件承载着富文本攻略的渲染与长截图分享功能。开发者常陷入两大深坑&#xff1a;“隐藏即销毁”导致回调丢失与“异步滚动”导致截图空白。本文将结合Visibility枚举的底层机制与enableWholeWebPageDrawing的时序控制&#xff0c…

作者头像 李华