达梦数据库数据守护集群启动与关闭标准流程

核心原则: 严格按照顺序操作,确保集群状态稳定切换,避免数据不一致或脑裂风险。


一、 数据守护集群启动顺序(关键步骤)

  1. 启动数据库实例 (Mount 状态)

    • 操作目的: 启动数据库但不打开数据文件,允许修改配置和模式。

    • 操作命令 (在主库 DM1 执行):

      bash 复制代码
      ./dmserver /DM/data/DAMENG/dm.ini mount
    • 操作命令 (在备库 DM2 执行):

      bash 复制代码
      ./dmserver /DM/data/DAMENG/dm.ini mount
  2. 修改数据库运行模式

    • 设置主库模式 (在 Mount 状态的 DM1 上执行 SQL):

      sql 复制代码
      ALTER DATABASE PRIMARY;
    • 设置备库模式 (在 Mount 状态的 DM2 上执行 SQL):

      sql 复制代码
      ALTER DATABASE STANDBY;
  3. 启动守护进程 (Daemon)

    • 启动主库守护 (在主机 DM1 上执行):

      bash 复制代码
      ./DmWatcherServiceGRP1_RT_01 start
    • 启动备库守护 (在备机 DM2 上执行):

      bash 复制代码
      ./DmWatcherServiceGRP1_RT_02 start
    • 守护进程负责监控实例状态、管理主备切换、重演归档日志。

  4. 启动监视器 (Monitor - 可选但推荐)

    • 在监视节点 DM_W 上执行:

      bash 复制代码
      ./dmmonitor /home/dmdba/dmdbms/data/DAMENG/dmmonitor.ini
    • 监视器提供集群状态可视化监控和部分自动控制功能(如确认切换)。


二、 数据守护集群关闭顺序(安全停止)

  1. 退出监视器 (Monitor - 如果正在运行)

    • 在监视节点 DM_W 上操作: 在监视器命令行界面输入 exit 或直接关闭其运行终端。
  2. 关闭备库守护进程 (在备机 DM2 上执行):

    bash 复制代码
    ./DmWatcherServiceGRP1_RT_02 stop
  3. 关闭主库守护进程 (在主机 DM1 上执行):

    bash 复制代码
    ./DmWatcherServiceGRP1_RT_01 stop
  4. 关闭主机数据库实例 (在 DM1 上操作):

    • 连接到 DM1 数据库实例。

    • 执行 SQL 命令:

      sql 复制代码
      SHUTDOWN IMMEDIATE;
  5. 关闭备机数据库实例 (在 DM2 上操作):

    • 连接到 DM2 数据库实例。

    • 执行 SQL 命令:

      sql 复制代码
      SHUTDOWN IMMEDIATE;

三、 关键注意事项

  1. 顺序至关重要: 启动时必须先启库改模式,再启守护和监视器;关闭时必须先停监视器和守护,再停库。颠倒顺序极易导致集群状态异常或故障切换误触发。
  2. Mount 状态的作用: 启动时使用 mount 参数是为了让数据库处于可修改配置(如运行模式)的状态,但阻止用户访问数据,确保模式切换安全。
  3. 守护进程依赖: 守护进程需要在数据库实例启动后运行,监视器又依赖守护进程提供状态信息。
  4. 路径与文件名: 示例中的路径 (/DM/data/DAMENG/, /home/dmdba/dmdbms/data/DAMENG/) 和守护进程名 (DmWatcherServiceGRP1_RT_01) 需替换为实际部署环境中的值。
  5. 权限: 确保操作使用具有足够权限的用户(如 dmdba)。
  6. 关闭方式: 使用 SHUTDOWN IMMEDIATE 是安全的关闭方式,会回滚未提交事务但断开所有连接。避免直接 kill 进程或断电!
  7. 监视器非必须: 虽然监视器提供便利监控,但集群核心功能(守护进程+实例)本身可以独立运行。

四、 总结

遵循 启动库(mount) -> 改模式 -> 启守护 -> 启监视器 的启动流程和 停监视器 -> 停备守护 -> 停主守护 -> 停备库 -> 停主库 的关闭流程,是保障达梦数据守护集群稳定运行的关键。任何步骤的顺序错误都可能引发集群故障,尤其在生产环境中必须严格按此规程操作。 操作前务必核对配置文件路径和守护进程名称与实际环境一致。

建议结合达梦数据库官方文档和实际环境部署手册进行操作,并在测试环境充分验证流程后再应用于生产系统。

相关推荐
imDwAaY14 分钟前
MySQL 存储引擎是什么?
android·数据库·mysql
星云低代码开发平台21 分钟前
ERP 与 CRM 客户信用核对:业务键、时点和权限验收
大数据·数据库·人工智能
xiaogai_gai31 分钟前
销售出库单同步实战:旺店通→金蝶云星空的单一策略深度拆解
大数据·前端·数据库
下页、再停留34 分钟前
【C#桌面客户端系列学习-11】将SQLite数据库打包到exe里
数据库·c#·visual studio
下页、再停留35 分钟前
【C#桌面客户端系列学习-12】封装SQLite数据库基础操作工具类(CURD)
数据库·c#·visual studio
LYmatch39 分钟前
2024年408真题第41~47题汇总解析
数据库
程序员Sunday1 小时前
Redis 缓存穿透、击穿、雪崩怎么区分?从回源压力找原因
数据库·redis·缓存
我科绝伦(Huanhuan Zhou)1 小时前
磐维数据库(PanWeiDB)日常运维命令总结
运维·数据库
guo_wen_qiang1 小时前
redis实现秒杀功能-超卖&库存遗留问题的解决
数据库·redis·缓存
逐流人1 小时前
Redis内存数据库:从数据类型到集群部署
linux·运维·数据库·redis·缓存·云计算