暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

达梦数据库主备集群与监视器滚动升级

雪糕冰淇淋 s 2025-08-11
429

达梦数据库主备集群与监视器滚动升级

应用背景

本文主要阐述了达梦数据库的主备集群以及监视器的滚动升级步骤。此过程不影响业务的正常运行。同时如果三节点的监视器集群其中两节点部署在与数据库服务同一台主机上,升级主备库的同时,监视器也随之升级。重启监视器服务,即可正常实现主备库故障的自动切换以及监视器集群的高可用性。

滚动升级准备工作

上传程序档夹

主备库滚动升级之前,需要将新版本的程序档夹准备好,上传至主备库对应目录下,并修改升级包目录权限。

--修改程序目录权限

chmod -R 775 bin_new/

chown -R dmdba:dinstall bin_new/

查看数据库旧版本信息。

select * from v$version;

拷贝档

将key档、DmService启动档、DmWatcherService启动档拷贝至升级包bin_new目录下。

--拷贝档

cp -rp DmServiceDADBA DmWatcherServiceWatcher ../bin_new

数据库升级

对于多个备库的情况,同样可以参考本文中操作步骤,先统一升级所有备库实例。步骤3.3中,可以任意选择一个升级后的备库接管,最后升级主库完成后,再借助switchover命令切换主备库。

备库升级

查看集群状态

--登录监视器查看集群状态

show

停止备库服务

正常关闭备库守护服务和数据库服务,这个过程中,主库的守护进程会检测到备库故障,但是不影响业务正常运行。

--关闭DmWatcherServiceWatcher服务

systemctl stop DmWatcherServiceWatcher

--关闭DmServiceDADBA服务

systemctl stop DmServiceDADBA

修改档夹名称,将升级前版本的程序档进行备份,此时bin目录下为新版的程序档。

mv bin bin_bak

mv bin_new bin

查看集群状态

--登录监视器查看集群状态

show

启动服务

前置操作:完成以上所有准备工作。

操作:使用新版本的bin目录档,开启数据库服务。先启动Dmservice服务,之后启动DmWatcherService服务,等待历史数据同步完成,备库重新加入数据守护系统。

--开启DmWatcherServiceWatcher服务

systemctl start DmWatcherServiceWatcher

--开启DmServiceDADBA服务

systemctl start DmServiceDADBA

操作有效性验证:打开监视器,查看备库是否重新加入集群。

主库升级

查看集群状态

--登录监视器查看集群状态

show

停止主库服务

手动switchover切换,确保正常切换且业务访问正常后,再停主库守护进程和实例。

--手动switchover切换

switchover 组名.实例名

--监视器查看集群状态,确保主库状态正常

show

查看确认监视器日志,监视器自动切换备库为新主库。

修改档夹名称,将升级前版本的程序档进行备份,此时bin目录下为新版的程序档。

mv bin bin_bak

mv bin_new bin

查看集群状态

--登录监视器查看集群状态,备监视器正常切换为主监视器、数据库集群故障时可正常自动切换

show

启动服务

前置条件:完成以上所有准备工作。

操作:使用新版本的bin目录档,开启数据库服务。先启动Dmservice服务,之后启动DmWatcherService服务,查看监视器,等待历史数据同步完成,原集群主库作为备库重新加入数据守护系统。

--开启DmWatcherServiceWatcher服务

systemctl start DmWatcherServiceWatcher

--开启DmServiceDADBA服务

systemctl start DmServiceDADBA

操作有效性验证:打开监视器,查看原主库是否重新加入集群,并查询v$version视图,查看版本是否升级成功。

查看数据库新版本信息。

select * from v$version;

监视器升级

如果监视器节点与数据库服务节点部署在同一台主机上,则监视器与数据库服务用的是同一个bin执行档。数据库版本升级后,监视器版本也随之升级。只需重启监视器服务。

如果监视器节点部署在单独的主机上,则需要替换bin,重启监视器服务。

拷贝档

将原本DmMonitorServiceMonitor服务档拷贝至新的bin_new目录下。

--拷贝服务档

cp -rp DmMonitorServiceMonitor ../bin_new

修改档夹名称,将升级前版本的程序档进行备份,此时bin目录下为新版的程序档。

mv bin bin_bak

mv bin_new bin

备监视器升级

注意,需要先统一升级所有备监视器,再升级主监视器。

查看监视器集群状态

--登录监视器查看集群状态

show state

停止备监视器服务并查看监视器集群状态

--停止监视器服务,确保其他监视器节点能够自动切主且服务正常。注意每停止一个监视器服务,就要查看一下监视器集群状态是否正常

systemctl stop DmMonitorServiceMonitor

show state

重启服务并查看监视器集群状态

重启监视器服务,查看监视器集群状态:

--启动监视器服务,确保监视器服务正常

systemctl start DmMonitorServiceMonitor

show state

主监视器升级

查看监视器集群状态

--登录监视器查看集群状态

show state

停止主监视器服务并查看监视器集群状态

--停止监视器服务,确保其他监视器节点能够自动切主且服务正常。注意每停止一个监视器服务,就要查看一下监视器集群状态是否正常

systemctl stop DmMonitorServiceMonitor

show state

重启服务并查看监视器集群状态

重启监视器服务,查看监视器集群状态:

--启动监视器服务,确保监视器服务正常

systemctl start DmMonitorServiceMonitor

show state


https://eco.dameng.com

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论