1. 从零开始:认识达梦数据守护集群的“眼睛”
如果你正在管理一个达梦数据库的主备集群,那么监视器(dmmonitor)就是你绝对不能忽视的“眼睛”和“指挥棒”。我刚开始接触达梦守护集群的时候,也常常被各种进程和状态搞得晕头转向,直到我真正理解了监视器的作用,才感觉整个运维工作一下子清晰了起来。简单来说,监视器就是一个命令行工具,但它可不是普通的命令行,它是整个数据守护系统的“大脑中枢”。它不生产数据,也不存储数据,但它知道集群里发生的一切,并且能在关键时刻做出决策。
你可以把它想象成一个24小时无休的机房值班员。这个值班员(监视器)通过专门的线路(监视器接口)和各个机柜里的设备管理员(守护进程dmwatcher)保持联系。主库和备库就是这些核心设备。值班员手里有一个大屏幕,上面实时显示着:谁在干活(主库),谁在待命(备库),待命的那位有没有在认真同步主库的操作日志(Redo日志),他们之间的通讯线路是否畅通。更重要的是,当正在干活的设备突然宕机时,值班员有权决定让哪位待命的设备立刻顶上去,并且指挥整个交接过程。这就是监视器最核心的两大功能:状态监控和主备切换。
很多新手可能会把数据库实例本身的服务状态和守护集群的状态混为一谈。其实,通过数据库自己的工具,你只能看到单个库是“OPEN”还是“MOUNT”。但集群的健康状况,比如主备角色是否正常、数据同步有没有延迟、守护进程本身是否在岗,这些信息都必须通过监视器来获取。没有它,你的主备集群就像是在黑箱里运行,出了故障你根本不知道从哪里下手。所以,无论你是准备部署集群,还是日常运维,花点时间把监视器玩转,绝对是事半功倍的投资。
2. 实战第一步:启动监视器与解读集群全景图
知道了监视器的重要性,我们马上动手把它用起来。启动监视器非常简单,只需要一条命令,但命令背后的配置文件 dmmonitor.ini 是关键。这个文件通常在达梦安装目录的 bin 目录下,它定义了监视器要连接哪些守护进程。假设我们的环境像最常见的架构那样:机器A跑主库(GRP1_RT_02)和它的守护进程,机器B跑备库(GRP1_RT_01)和它的守护进程,机器C则专门运行监视器。
在机器C上,我们进入达梦的安装目录,执行:
[dmdba@monitor_host ~]$ /opt/dmdbms/bin/dmmonitor /opt/dmdbms/bin/dmmonitor.ini
执行成功后,你会进入一个以 [monitor] 为提示符的命令行界面。到这里,监视器就已经启动并连接到集群中的守护进程了。接下来,我们输入最核心、最常用的命令:show。
这个 show 命令的输出信息量非常大,第一次看可能会觉得眼花缭乱。别慌,我们一层层拆解。输出内容主要分为三大部分:组全局信息、库全局信息和数据库实例信息。我们结合一个实际的输出来看。
首先是最顶部的组全局信息:
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 45331 FALSE AUTO FALSE
这五行是集群的“身份证”和“运行模式说明书”。
- GROUP:就是你给这个守护进程组起的名字,比如
GRP1。 - OGUID:这是整个组的唯一标识符,确保不会和其他集群搞混,配置文件中所有实例的这个值必须一致。
- MON_CONFIRM:这是重中之重。它显示监视器是否为“确认模式”。
FALSE表示当前是非确认模式。在非确认模式下,即使你配置了故障自动切换(MODE为AUTO),监视器也无法自动触发备库接管,只能报警。这主要是为了

788

被折叠的 条评论
为什么被折叠?



