注册
达梦数据守护集群服务注册理解与学习
技术分享/ 文章详情 /

达梦数据守护集群服务注册理解与学习

chinuppp 2026/07/31 185 0 0

一、写在前面
在达梦数据守护集群的搭建过程中,很多初学者会习惯性地用 ./dmserver、./dmwatcher、./dmmonitor 命令手工启动各个进程。这种方式在测试环境没有问题,但一旦切换到生产环境,就会暴露几个明显的痛点:

终端依赖:进程在前台运行,一旦 SSH 会话断开或终端关闭,进程就会终止

无法开机自启:服务器重启后,所有进程需要人工重新启动

管理混乱:多个进程分散在不同终端,难以统一管理

故障恢复慢:进程异常退出后,需要人工发现并重新拉起

为了解决这些问题,达梦提供了 dm_service_installer.sh 脚本,可以将数据库实例、守护进程和监视器注册为操作系统服务,实现后台运行和开机自启。

本文将详细介绍服务注册的原理、操作步骤和验证方法。

二、服务注册的本质
2.1 什么是服务注册?
服务注册,本质上是将达梦的各个进程(dmserver、dmwatcher、dmmonitor)交给操作系统的服务管理工具(如 systemd)来统一管理。

注册前(手工启动):

# 需要开多个终端,每个进程前台运行
./dmserver /dmdata/data/DAMENG/dm.ini mount
./dmwatcher /dmdata/data/DAMENG/dmwatcher.ini
./dmmonitor /home/dmdba/dmdbms/bin/dmmonitor.ini

注册后(服务方式):

# 一条命令启动,后台运行
DmWatcherServiceWatcher01 start
DmWatcherServiceWatcher02 start
DmMonitorServiceMonitor start

2.2 注册服务的好处

对比项 手工启动 服务方式
运行方式 前台运行 后台运行(daemon)
终端依赖 断开连接进程终止 不受终端影响
开机自启 ❌ 不支持 ✅ 支持
进程管理 ps -ef | grep 查看 status 命令查看
异常退出 需人工发现并重启 可配置自动重启
统一管理 多个终端分散管理 统一命令管理

三、服务注册操作步骤

3.1 环境说明

本次操作基于已搭建完成的达梦数据守护集群:

项目 主库 备库
实例名 GRP1_RT_01 GRP1_RT_02
实例端口 5236 5237
数据目录 /dmdata/data/DAMENG /dmdata/data1/DAMENG
守护端口 5436 5437
安装目录 /home/dmdba/dmdbms /home/dmdba/dmdbms

注意:注册服务需要用 root 用户执行,因为 systemd 服务文件的创建需要 root 权限。

3.2 注册主库服务

3.2.1 注册主库数据库实例服务

su - root
/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmserver -p GRP1_RT_01 -dm_ini /dmdata/data/DAMENG/dm.ini -m mount

参数说明:

  • -t dmserver:指定服务类型为数据库实例服务
  • -p GRP1_RT_01:服务名前缀,生成的服务名为 DmServiceGRP1_RT_01
  • -dm_ini:指定 dm.ini 配置文件路径
  • -m mount:指定实例以 Mount 方式启动(守护进程会自动将其 Open)

3.2.2 注册主库守护进程服务

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmwatcher -p Watcher01 -watcher_ini /dmdata/data/DAMENG/dmwatcher.ini

3.3 注册备库服务

3.3.1 注册备库数据库实例服务

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmserver -p GRP1_RT_02 -dm_ini /dmdata/data1/DAMENG/dm.ini -m mount

3.3.2 注册备库守护进程服务

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmwatcher -p Watcher02 -watcher_ini /dmdata/data1/DAMENG/dmwatcher.ini

3.4 注册监视器服务

3.4.1 确认监视器配置文件

注册监视器服务前,需要先准备好确认监视器的配置文件 dmmonitor.ini

cat > /home/dmdba/dmdbms/bin/dmmonitor.ini << 'EOF'
MON_DW_CONFIRM = 1
MON_LOG_PATH = /home/dmdba/dmdbms/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 512
MON_LOG_SPACE_LIMIT = 2048

[GRP1]
MON_INST_OGUID = 45331
MON_DW_IP = 192.168.200.249:5436
MON_DW_IP = 192.168.200.249:5437
EOF

mkdir -p /home/dmdba/dmdbms/log

3.4.2 注册监视器服务

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmmonitor -p Monitor -monitor_ini /home/dmdba/dmdbms/bin/dmmonitor.ini

3.5 验证服务注册成功

注册完成后,查看生成的服务文件:

ls -l /home/dmdba/dmdbms/bin/DmService*
ls -l /home/dmdba/dmdbms/bin/DmWatcherService*
ls -l /home/dmdba/dmdbms/bin/DmMonitorService*

预期输出:

008abf403dbe4141b9e106d2fdba4ecd.png

四、服务管理与验证

4.1 常用管理命令

操作 主库守护进程 备库守护进程 监视器
启动 DmWatcherServiceWatcher01 start DmWatcherServiceWatcher02 start DmMonitorServiceMonitor start
停止 DmWatcherServiceWatcher01 stop DmWatcherServiceWatcher02 stop DmMonitorServiceMonitor stop
状态 DmWatcherServiceWatcher01 status DmWatcherServiceWatcher02 status DmMonitorServiceMonitor status
重启 DmWatcherServiceWatcher01 restart DmWatcherServiceWatcher02 restart DmMonitorServiceMonitor restart

4.2 查看服务运行状态

/home/dmdba/dmdbms/bin/DmWatcherServiceWatcher01 status
/home/dmdba/dmdbms/bin/DmWatcherServiceWatcher02 status
/home/dmdba/dmdbms/bin/DmMonitorServiceMonitor status

a4672a8337274be5b2161675dca5f038.png

4.3 验证集群状态

服务启动后,通过监视器查看集群状态:

/home/dmdba/dmdbms/bin/dmmonitor /home/dmdba/dmdbms/bin/dmmonitor.ini

在监视器界面输入 show,预期输出:

1c7ef374ad074439af0b5d77f57a9b6d.png

注意show 输出的集群状态与是否注册服务无关。无论采用何种方式启动,只要集群正常运行,show 的输出结果都是一致的。服务注册改变的是进程的管理方式,而非数据库的运行状态。

五、服务删除与重新注册

5.1 删除已注册的服务

如果需要重新注册或清理环境,可以使用卸载脚本删除服务:

/home/dmdba/dmdbms/script/root/dm_service_uninstaller.sh -n DmServiceGRP1_RT_01
/home/dmdba/dmdbms/script/root/dm_service_uninstaller.sh -n DmWatcherServiceWatcher01
/home/dmdba/dmdbms/script/root/dm_service_uninstaller.sh -n DmServiceGRP1_RT_02
/home/dmdba/dmdbms/script/root/dm_service_uninstaller.sh -n DmWatcherServiceWatcher02
/home/dmdba/dmdbms/script/root/dm_service_uninstaller.sh -n DmMonitorServiceMonitor

5.2 删除后重新注册

如果集群配置发生变化(如端口调整、目录变更),需要先删除旧服务,再重新注册新服务。

总结

本文详细介绍了达梦数据守护集群服务注册的完整流程,包括:

服务注册的本质:将达梦进程交给操作系统统一管理

注册服务的好处:后台运行、开机自启、统一管理

操作步骤:主库、备库、监视器服务的注册命令

验证方法:检查服务状态和集群状态

常见问题:端口占用、监视器冲突等问题的解决方案

服务注册是达梦集群从“测试验证”走向“生产可用”的关键一步。完成注册后,集群不再依赖人工手工启动,具备开机自启能力,真正实现了生产环境的部署标准。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服