温馨提示×

centos oracle配置如何实现高可用

小樊
32
2025-12-07 13:50:16
栏目: 云计算

CentOS 上实现 Oracle 高可用的主流方案与落地路径


一、方案总览与选型建议

  • Oracle RAC(Real Application Clusters):多节点共享存储,实例级高可用与负载均衡,故障节点业务由其他实例继续提供服务,适合7×24 高并发核心库。
  • Oracle Data Guard:主备库复制(物理/逻辑),提供零数据丢失或近零丢失的灾难恢复与切换能力,适合同城/异地容灾与读写分离读库场景。
  • Global Data Services(GDS):在多库(如 RAC 与 DG 备库)之上提供连接池与全局服务,实现访问的自动路由与负载均衡,提升整体可用性与弹性。

二、RAC 本地高可用部署要点(CentOS 7/8 + Oracle 11g/19c)

  • 网络规划与主机名
    • 至少准备两块网卡Public(业务网)与 Private(集群心跳/缓存融合)。
    • 规划 VIP(每个节点 1 个)与 SCAN IP(单入口,11g 后引入),并在 DNS 或 /etc/hosts 中完成解析。
    • 示例(/etc/hosts):
      10.0.0.21  rac1
      10.0.0.22  rac2
      10.0.0.23  rac1-vip
      10.0.0.24  rac2-vip
      10.0.0.25  rac-scan
      172.16.1.21 rac1-priv
      172.16.1.22 rac2-priv
      
  • 操作系统与安全基线
    • 关闭或放行必要端口(如 1521、22),生产环境建议精细放行而非直接关闭防火墙。
    • SELinux 设为 permissive/disabled,并配置 NTP/chrony 保证节点时间一致。
  • 共享存储与集群栈
    • 使用 ASM(或厂商共享存储)承载数据/归档/快速恢复区,规划 OCR/Voting 磁盘冗余。
    • 安装 Oracle Grid Infrastructure(集群件 + ASM),再安装 Oracle Database 软件并创建 RAC 数据库。
  • 安装后验证
    • 使用 crsctl stat res -tsrvctl status database -d <db_unique_name> 检查集群与数据库状态,确认 VIP/SCAN/实例 正常。

三、Data Guard 容灾与切换(物理备库为主,支持 Active Data Guard)

  • 前置条件
    • 主备库 Oracle 版本一致,主库开启 归档模式FORCE LOGGING,并配置 密码文件(remote_login_passwordfile=exclusive)。
    • 建议为主备库配置 静态监听,便于在 nomount 阶段远程连接。
  • 关键配置步骤(示例参数)
    • 主库:
      ALTER DATABASE FORCE LOGGING;
      SHUTDOWN IMMEDIATE; STARTUP MOUNT;
      ALTER DATABASE ARCHIVELOG;
      ALTER DATABASE OPEN;
      
      ALTER SYSTEM SET db_unique_name='orcl' SCOPE=SPFILE;
      ALTER SYSTEM SET log_archive_config='DG_CONFIG=(orcl,orcl2)' SCOPE=SPFILE;
      ALTER SYSTEM SET log_archive_dest_1='LOCATION=/u01/app/oracle/oradata/orcl/arch VALID_FOR=(ALL_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl' SCOPE=SPFILE;
      ALTER SYSTEM SET log_archive_dest_2='SERVICE=orcl2 LGWR SYNC VALID_FOR=(ONLINE_LOGFILE,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl2' SCOPE=SPFILE;
      
    • 备库:创建与参数匹配的 pfile/spfile,以 nomount 启动后通过 RMANData Pump 初始化数据文件,然后启用 MRP(介质恢复进程)。
    • 管理与切换
      • 使用 Data Guard Brokerdgmgrl)统一管理,执行 SHOW CONFIGURATIONSWITCHOVERFAILOVER 等操作,简化切换流程与一致性校验。

四、RAC + DG 企业级组合架构与连接治理

  • 架构组合
    • 生产侧采用 RAC Primary,容灾侧部署 单实例/单 RAC Standby,实现负载均衡 + 故障切换 + 异地容灾的纵深防护。
    • 常见拓扑:主库为 RAC + SCAN,备库为 单实例(或同城第二机房 RAC),通过 LGWR SYNC/ASYNC 传输 Redo。
  • 连接与服务
    • 在 RAC 与 DG 上统一发布 服务(Service),客户端通过 SCAN/服务名 连接;结合 GDS 实现跨库连接池、就近路由与自动故障转移。

五、运维与监控要点

  • 可用性
    • 定期演练 Switchover/Failover,验证 RAC 节点宕机、存储抖动、网络分区、主备切换等场景的 RTO/RPO 指标。
    • VIP/SCAN/监听/ASM/集群资源 设置告警阈值与自检脚本,确保异常可观测、可恢复。
  • 性能与健康
    • 使用 AWR/ASH 定期分析负载与等待事件,优化 SQL、索引、统计信息、SGA/PGA 与 I/O 路径;检查 Redo 传输延迟备库 Apply Lag 等关键指标。

0