Debian 上部署 Informix 复制的实用步骤
一 复制方式与前置准备
- 明确复制目标:常见为高可用/主从、读写分离、近实时灾备。
- 版本与拓扑:两端安装相同小版本的 Informix Dynamic Server(IDS);规划主节点与备节点的 IP、端口、复制方向(单向/双向)。
- 操作系统与网络:在 Debian 上确保内核网络参数、主机名解析、时间同步(建议 NTP)正常;开放数据库监听端口与复制通信端口(实例端口与复制端口)。
- 资源与安全:为复制预留CPU/内存/磁盘 I/O;使用强口令与最小权限账号;建议通过 TLS/SSL 加密复制链路(如采用企业版支持)。
- 备份与回滚:变更前完整备份 onconfig、逻辑日志、关键数据;准备回滚方案与演练计划。
二 两种常见复制路径对比与选择
| 方案 |
适用场景 |
核心组件 |
关键配置 |
优点 |
局限 |
| HDR(High-Availability Data Replication) |
主从高可用、快速切换 |
主实例、备实例 |
主备均启用 HDR;定义 primary/secondary;配置 DBSERVERNAME/DBSERVICENAME 与复制端口 |
切换快、数据一致性强、运维成熟 |
通常为一主一备;备库以只读为主 |
| ER(Enterprise Replication,亦称 CDR) |
跨实例/跨库/跨机房复制、双向/多向 |
ER 服务、复制域/复制表 |
定义 Replication Server、复制域、复制表与冲突策略 |
拓扑灵活、可多向/部分表复制 |
配置复杂、需处理冲突与一致性 |
提示:若目标是“主从高可用”,优先选择 HDR;若需要“跨域/多向/选择性复制”,选择 ER。
三 快速上手 HDR 主从复制(示例)
- 步骤 1 准备实例
- 在两台 Debian 主机安装并初始化 IDS,确保实例名、监听端口、空间与日志配置正常;时间同步。
- 步骤 2 配置主实例(Primary)
- 在 $ONCONFIG 中确保:
- 基础网络与实例名:如 DBSERVERNAME primary、DBSERVICENAME ids_service
- 复制相关:启用 HDR 所需参数(不同版本参数名略有差异,常见为与 HDR 相关的开关与端口)
- 重启实例使配置生效:
oninit
- 步骤 3 配置备实例(Secondary)
- 在 $ONCONFIG 中设置与主实例一致的实例名/服务名规范,并配置复制端口与通信参数。
- 重启实例:
oninit
- 步骤 4 建立 HDR 连接
- 在主库添加备库为二级:
onmode -d add secondary secondary_hostname:service
- 观察备库接收日志:
onstat -g dri(应见到 HDR 线程与连接建立)
- 步骤 5 启动复制与验证
- 在主库启动 HDR:
onmode -d start normal
- 验证状态:
onstat -g dri(HDR 状态应为 Active/Connected)
onstat -g rep(复制积压为 0 或接近 0)
- 在主库写入少量数据,确认备库可见
- 步骤 6 切换演练
- 计划内切换:
onmode -d make primary(在备库执行,原主库降级为备)
- 回切同理;切换后复核应用连接与复制积压
四 快速上手 ER 复制(示例)
- 步骤 1 规划与准备
- 明确复制域(数据库/表集合)、方向(单向/双向)、冲突解决策略(如时间戳/站点优先)。
- 步骤 2 配置复制服务器
- 在两端 $ONCONFIG 中启用 ER 相关参数(如 ER_SERVER、通信端口、日志与缓存等),并重启实例。
- 步骤 3 创建复制域与复制表
- 使用 cdr 命令行工具创建复制域、添加复制表,必要时设置冲突处理与过滤条件。
- 步骤 4 启动 ER 与监控
- 启动 ER 服务:
cdr start replication
- 监控:
cdr check replication、onstat -g cdr,并关注冲突与积压告警
- 步骤 5 验证与调优
- 在源端写入数据,验证目标端一致性;根据延迟与冲突情况调整批量大小、网络与冲突策略
五 常用命令与运维要点
- 常用命令
- 实例控制:
oninit(启动)、onmode -k(停止)、onmode -c(强制检查点)
- 状态与诊断:
onstat -g dri(HDR/ER 线程)、onstat -g rep(复制状态)、onstat -m(日志尾部)、onstat -l(逻辑/物理日志)
- HDR 管理:
onmode -d add secondary ...、onmode -d make primary、onmode -d start normal
- ER 管理:
cdr start|stop replication、cdr check replication、cdr list
- 运维要点
- 日志与空间:持续监控 逻辑日志 使用,配置合理的日志备份/归档策略,避免复制因日志满而中断。
- 网络与延迟:复制链路需低时延/高带宽;跨机房部署时优先专线或加密隧道。
- 一致性校验:定期抽样对比主备/目标数据;ER 场景启用冲突监控与告警。
- 备份与恢复:复制不是备份,仍需定期全备与逻辑日志备份;演练恢复流程。
- 变更管理:变更 $ONCONFIG 前先备份;变更窗口内控制 DDL 与批量导入,避免复制积压激增。
注意:不同版本的 Informix 在参数名称、命令语法与复制细节上可能存在差异。生产环境操作前请在测试环境验证,并参考对应版本的官方文档与厂商支持。