达梦数据库集群守护(DM Cluster Guardian)作为企业级高可用解决方案,通过实时监控与自动切换机制保障业务连续性。本文将深入解析其技术原理,并提供完整的实战部署指南。
一、核心架构与技术原理
角色 CPU 内存 存储 网络
主库 8 核 + 16GB+ SSD 500GB+ 双万兆网卡
备库 8 核 + 16GB+ SSD 500GB+ 双万兆网卡
监视器 4 核 + 8GB+ HDD 100GB+ 千兆网卡
软件环境:
操作系统:CentOS 7.6+ / RedHat 7.6+
数据库版本:DM 8.1.1.193+
防火墙策略:开放 TCP 5236(数据库)、4536(守护进程)、5336(监视器)端口
2. 集群规划
服务器 IP 地址 实例名 端口 角色
dm-primary 192.168.1.101 DMSERVER 5236 主库
dm-standby1 192.168.1.102 DMSERVER 5236 备库 1
dm-standby2 192.168.1.103 DMSERVER 5236 备库 2
dm-monitor 192.168.1.104 - 5336 监视器
3. 数据库基础配置
主库配置文件 (dm.ini):
INSTANCE_NAME = DMSERVER
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
RLOG_SEND_APPLY_MON = 64
主库 MAL 配置 (mal.ini):
[MAL_INST1]
MAL_INST_NAME = DMSERVER
MAL_HOST = 192.168.1.101
MAL_PORT = 4536
MAL_INST_HOST = 192.168.1.101
MAL_INST_PORT = 5236
MAL_DW_PORT = 5636
[MAL_INST2]
MAL_INST_NAME = DMSERVER
MAL_HOST = 192.168.1.102
MAL_PORT = 4536
MAL_INST_HOST = 192.168.1.102
MAL_INST_PORT = 5236
MAL_DW_PORT = 5636
[MAL_INST3]
MAL_INST_NAME = DMSERVER
MAL_HOST = 192.168.1.103
MAL_PORT = 4536
MAL_INST_HOST = 192.168.1.103
MAL_INST_PORT = 5236
MAL_DW_PORT = 5636
主库归档配置 (arch.ini):
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER_STANDBY1
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmarch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 0
4. 守护进程配置
主库守护进程配置 (dw.ini):
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 453331
INST_INI = /dm7/data/DMSERVER/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm7/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0
5. 监视器配置
[GRP1]
MON_DW_IP = 192.168.1.101:5636
MON_DW_IP = 192.168.1.102:5636
MON_DW_IP = 192.168.1.103:5636
[GRP1]
MON_INST_OGUID = 453331
MON_DW_CONFIRM = 1
MON_LOG_PATH = /dm7/monitor/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
6. 集群搭建步骤
步骤 1:初始化主库
./dminit path=/dm7/data instance_name=DMSERVER port_num=5236
vi /dm7/data/DMSERVER/dm.ini
vi /dm7/data/DMSERVER/mal.ini
vi /dm7/data/DMSERVER/arch.ini
./dmserver /dm7/data/DMSERVER/dm.ini
步骤 2:创建 OGUID 并备份主库
-- 在主库执行
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SP_SET_PARA_VALUE(1, 'ENABLE_OFFLINE_TS', 2);
SP_SET_OGUID(453331);
CREATE PUBLIC SYNONYM SNAPSHOT FOR SYS.SNAPSHOT;
COMMIT;
-- 备份数据库
BACKUP DATABASE FULL TO BACKUP_FILE1;
步骤 3:配置备库
./dmrman CTLSTMT="RESTORE DATABASE '/dm7/data/DMSERVER/dm.ini' FROM BACKUPSET '/dm7/backup/BACKUP_FILE1'"
vi /dm7/data/DMSERVER/dm.ini
vi /dm7/data/DMSERVER/arch.ini
步骤 4:配置守护进程
vi /dm7/data/DMSERVER/dw.ini
./dmwatcher /dm7/data/DMSERVER/dw.ini -m mount
步骤 5:启动监视器
./dmmonitor /dm7/data/dmmonitor.ini
步骤 6:切换集群至 OPEN 模式
<GRP1> switchover DMSERVER
三、运维与监控要点
文章
阅读量
获赞