【YashanDB知识库】OM仲裁节点故障后手工切换方案和yasom仲裁重新部署后重新纳管数据库集群方案

一主一备数据库集群部署

登录OM节点,上传软件包后解压,以/home/shuiwu/install路径为例

cd /home/shuiwu/install

tar -zxf yashandb-22.2.2.0-linux-x86_64.tar.gz

安装参数调整

./bin/yasboot package config gen --cluster yashandb -u shuiwu -p shuiwu --ip 192.168.24.48,192.168.24.49 --port 22 --install-path /home/shuiwu/yasdb_home --data-path /home/shuiwu/yasdb_data --begin-port 5688 --yas-type SE --db 2

执行安装

./bin/yasboot package install -t hosts.toml -i yashandb-22.2.2.0-linux-x86_64.tar.gz

数据库部署

./bin/yasboot cluster deploy -t yashandb.toml

在主备节点分别设置环境变量

cat /home/shuiwu/yasdb_home/yashandb/22.2.16.100/conf/yashandb.bashrc >> ~/.bashrc

source ~/.bashrc

查看数据库状态,检验安装是否成功

图片12

OM仲裁故障时手动切换方案

构造yasom故障的场景,使用kill -9 杀掉yasom进程

图片13

环境中配置了自动切换的,需要先关闭 OM_ELECTION_ENABLE开关;

图片3

通过本地登录的方式,登录到备节点,使用alter database switch的sql命令做主备切换,观察切换是否成功

图片11

新搭建一套yasom仲裁重新纳管数据库集群

在一台新机器生成服务器配置文件,要保证新的端口和原有端口不冲突

./bin/yasboot package config gen --cluster yashandb_new -u shuiwu -p shuiwu --ip 192.168.8.4,192.168.24.48,192.168.24.49 -t SE --begin-port 3388 --install-path /home/shuiwu/yasdb_new

假如重新纳管集群名称需要和原有保持一致,需要最以下规避操作:

● 删除原有数据库主备节点上的env文件,rm -rf ~/.yasboot/{cluster_name}.env,其中 cluster_name为原有的集群名;

● 在原有数据库主备节点上停止yasagent进程;

图片2

● 后续命令中涉及到集群名的地方使用原有集群名即可。

● 在新机器上部署yasom,将yasom和yasagent初始化,老的数据库节点上新老yasagent同时存在

./bin/yasboot package install -i yashandb-22.2.16.100-linux-x86_64.tar.gz -t hosts.toml

图片14

图片6

● 生成托管配置模板文件

./bin/yasboot package config join-demo -t SE

● 修改托管配置文件

图片7

● 执行托管命令

./bin/yasboot cluster join -t SE --config join_demo.toml

图片15

● 新的OM节点查看原集群信息,新纳管集群名称为新取的名字,实际集群为老的数据库集群

./bin/yasboot cluster status -c yashandb_new -d

图片9

● 查看老的数据库节点链接文件信息

图片10

posted @   YashanDB  阅读(4)  评论(0编辑  收藏  举报
编辑推荐:
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
阅读排行:
· [翻译] 为什么 Tracebit 用 C# 开发
· 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?
· RFID实践——.NET IoT程序读取高频RFID卡/标签
点击右上角即可分享
微信分享提示