以下是 Oracle 11g 至 23ai 版本搭建 Active Data Guard(ADG)的方法总结,涵盖各版本核心步骤及差异点,并附最终总结:

1. Oracle 各版本 ADG 搭建方法对比

步骤Oracle 11gOracle 12cOracle 18cOracle 21cOracle 23ai
1. 主库准备 1. 开启归档模式:ALTER DATABASE ARCHIVELOG;
 
2. 启用 FORCE LOGGING:ALTER DATABASE FORCE LOGGING;
 
3. 手动创建 Standby Log(数量 = 主库 Online Log+1,大小一致)
 
4. 配置日志传输参数:
 
LOG_ARCHIVE_CONFIG='DG_CONFIG=(主库名,备库名)'
 
LOG_ARCHIVE_DEST_2='SERVICE=备库TNS VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=备库名'
 
LOG_ARCHIVE_DEST_STATE_2=ENABLE
1. 同 11g 基础配置
 
2. CDB 环境需确保所有 PDB 开启归档:ALTER PLUGGABLE DATABASE ALL ARCHIVELOG;
 
3. 简化参数:DB_UNIQUE_NAME自动区分主备,无需手动配置DG_CONFIG
 
4. 支持 PDB 级别的日志传输控制
1. 同 12c
 
2. 支持在线启用 ADG(主库无需停机):ALTER DATABASE ENABLE GUARD STANDBY;
 
3. 自动检测 Standby Log 需求,缺失时可动态创建:ALTER DATABASE ADD STANDBY LOGFILE AUTO;
1. 同 18c
 
2. 增强日志传输容错:LOG_ARCHIVE_DEST_2默认启用自动重试(REOPEN=30
 
3. 支持主库 RAC 与备库单实例混合部署(自动适配线程数)
1. 同 21c
 
2. AI 驱动参数推荐:DBMS_DG_ADVISE.GENERATE_CONFIG生成最优参数集
 
3. 自动适配云环境:OCI 路径自动映射(DB_CREATE_FILE_DEST兼容云存储)
2. 备库初始化 1. 复制主库密码文件:
 
scp $ORACLE_HOME/dbs/orapw<主库SID> 备库用户@备库IP:$ORACLE_HOME/dbs/orapw<备库SID>
 
2. 恢复主库数据文件:
 
- 主库备份:BACKUP DATABASE PLUS ARCHIVELOG;
 
- 备库恢复:RMAN> RESTORE DATABASE;(需提前注册备份)
 
3. 生成并复制 Standby 控制文件:
 
- 主库:ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/standby.ctl';
 
- 备库:复制至所有控制文件路径(如control01.ctlcontrol02.ctl
 
4. 配置备库参数文件:
 
- 复制主库spfile,修改:DB_UNIQUE_NAME=备库名FAL_SERVER=主库TNSLOG_ARCHIVE_DEST_1=备库归档路径
 
5. 挂载备库:
 
STARTUP NOMOUNT;(加载参数)→ ALTER DATABASE MOUNT STANDBY DATABASE;
 
6. 验证数据文件一致性:
 
SELECT NAME, CHECKPOINT_CHANGE# FROM V$DATAFILE_HEADER;(确保所有文件 SCN 一致)
1. 密码文件同步:
 
- 推荐:RMAN DUPLICATE FROM ACTIVE DATABASE(自动同步密码文件)
 
- 手动:同 11g 复制方法
 
2. 备库创建:
 
DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE NOFILENAMECHECK;(无需手动复制文件)
 
3. 备库自动识别 CDB/PDB 结构,无需手动配置 PDB
 
4. 挂载备库:STARTUP MOUNT;(自动识别 Standby 控制文件)
1. 密码文件:DUPLICATE自动同步,手动复制需保持 SID 匹配
 
2. 备库创建:同 12c,DUPLICATE支持并行传输(PARALLELISM 4
 
3. 备库可处于MOUNTOPEN READ ONLY状态执行增量刷新
 
4. 自动处理路径差异(NOFILENAMECHECK默认生效)
1. 密码文件:支持ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE;自动同步
 
2. 备库创建:DUPLICATE增强并行传输(需提前配置 RMAN 通道:CONFIG ALLOCATE CHANNEL ... PARALLELISM 8;
 
3. 自动创建备库临时文件(无需手动复制)
1. 密码文件:AI 自动检测并同步(DBMS_AI_DG.SYNC_PASSWORD_FILE
 
2. 备库创建:DUPLICATE集成 AI 加速(动态调整并行度)
 
3. 自动修复路径冲突(基于机器学习预测主备路径差异)
 
4. 支持跨版本备库创建(23ai 备库可同步 21c 主库)
3. 日志传输配置 1. 主库启动日志传输:ALTER SYSTEM SWITCH LOGFILE;(触发归档)
 
2. 验证传输状态:
 
主库:SELECT DEST_ID, STATUS, ERROR FROM V$ARCHIVE_DEST WHERE DEST_ID=2;
 
备库:SELECT SEQUENCE#, STATUS FROM V$ARCHIVED_LOG WHERE DEST_ID=1;(确认日志已接收)
1. 主库配置简化:LOG_ARCHIVE_DEST_2='SERVICE=备库TNS DB_UNIQUE_NAME=备库名'(自动识别角色)
 
2. 支持日志传输加密(SSL_CLIENT_AUTHENTICATION=TRUE
 
3. 监控视图:V$LOG_ARCHIVE_DEST_STATUS(更直观显示传输状态)
1. 同 12c,新增ARCHIVE_LAG_TARGET=300(5 分钟自动切换日志,减少延迟)
 
2. 日志传输默认启用压缩(COMPRESSION=MEDIUM
 
3. 支持断点续传(网络中断后自动续传未完成日志)
1. 增强压缩:COMPRESSION=HIGH(更高压缩比,适合低带宽环境)
 
2. 新增V$DG_LOG_TRANSPORT_STATUS(实时显示传输延迟、吞吐量)
 
3. 自动切换传输协议(TCP/SSL 根据网络状况)
1. AI 监控传输延迟:V$AI_DG_LAG(提前预警潜在传输中断)
 
2. 智能带宽分配(优先保障关键 PDB 日志传输)
 
3. 集成 OCI 日志传输服务(云环境专用通道)
4. 备库应用配置 1. 启动实时应用:
 
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;
 
2. 验证 MRP 进程:
 
SELECT PROCESS, STATUS FROM V$MANAGED_STANDBY WHERE PROCESS='MRP0';(需显示APPLYING_LOG
 
3. 处理 GAP:需手动注册缺失归档或重启 MRP
1. 启动实时应用:同 11g,支持USING CURRENT LOGFILE自动启用
 
2. 备库可只读打开并应用日志:ALTER DATABASE OPEN READ ONLY;(12c 新特性,无需单独启动)
 
3. 自动修复小 GAP(通过FAL_SERVER拉取缺失日志)
1. 启动应用:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE IN BACKGROUND;(进程更稳定)
 
2. 支持并行应用:ALTER DATABASE SET STANDBY_PARALLEL_DEGREE=4;
 
3. 一键切换角色:ALTER DATABASE SWITCHOVER TO PRIMARY;(无需手动停启)
1. 并行应用增强:PARALLEL_APPLY=ENABLED(自动调整并行度)
 
2. 自动修复所有 GAP(无需人工干预)
 
3. 支持备库 DML 重定向(读操作在备库,写操作自动路由至主库)
1. AI 优化并行应用:动态调整线程数(基于负载自动适配)
 
2. 智能 GAP 修复:预测可能的 GAP 并提前预防
 
3. 支持备库实时统计信息(与主库同步更新)
5. 验证与监控 1. 主库查询归档应用状态:
 
SELECT SEQUENCE#, ARCHIVED, APPLIED FROM V$ARCHIVED_LOG;
 
2. 备库查询延迟:
 
SELECT NAME, VALUE FROM V$DATAGUARD_STATS WHERE NAME='apply lag';
 
3. 无图形化工具,依赖 SQL 查询
1. 新增DBA_HIST_DG_STANDBY_STATS(历史监控)
 
2. 支持 EM Express(网页版监控,端口 5500)
 
3. DBMS_DG.VALIDATE_CONFIG验证配置完整性
1. 同 12c,增强V$DG_BROKER_CONFIG(显示详细配置差异)
 
2. 支持ALTER DATABASE VERIFY STANDBY DATABASE;(自动校验主备一致性)
1. 新增V$DG_PERFORMANCE(实时性能指标:传输速率、应用延迟)
 
2. OEM Cloud Control 集成(自动告警、性能分析)
 
3. 支持备库闪回(FLASHBACK STANDBY DATABASE TO SCN ...
1. AI 诊断工具:DBMS_AI_DG.ANALYZE(自动识别配置错误、性能瓶颈)
 
2. 实时可视化监控(OCI 控制台集成)
 
3. 预测性维护:基于 AI 模型预警潜在故障

2. 总结:各版本 ADG 搭建核心差异与注意事项

  1. 11g 核心特点:全手动流程,需严格同步密码文件、控制文件和参数文件,依赖FAL_SERVER处理 GAP,适合对稳定性要求高的传统环境。
  2. 12c 核心升级:引入DUPLICATE FROM ACTIVE DATABASE实现半自动化,支持备库只读打开与日志应用并行,适配多租户架构。
  3. 18c 核心优化:在线刷新能力增强,支持自动路径处理和断点续传,大幅降低手动操作量,更适合混合云环境。
  4. 21c 核心特性:并行传输 / 应用性能提升,自动 GAP 修复,集成更多监控视图,适合高可用要求的企业级部署。
  5. 23ai 核心突破:AI 驱动的参数配置、冲突修复和性能优化,云原生特性增强,支持跨版本同步,显著降低运维复杂度。
整体来看,Oracle ADG 搭建从 11g 的 “全手动、高门槛” 逐步演进到 23ai 的 “智能化、低干预”,核心目标是提升灾备系统的可靠性与易用性,同时适配云环境和复杂架构需求。
 posted on 2025-09-23 14:24  xibuhaohao  阅读(44)  评论(0)    收藏  举报