【Mariadb】-Mariadb集群故障节点替换过程(技术支持,请勿转载)
程序员文章站
2022-05-10 23:32:19
...
Mariadb 节点故障替换过程
这段时间搭建mariadb集群,老板问我,一个节点坏掉了,能否直接替换,不用重启其他机器,不新加节点。我在网上找了很多资料,都没有一个完整的解决方案。于是自己探索模拟了下,还真被自己试成功了,下面把过程记录了下来。
场景:三台Mariadb集群,假设其中某一台突然出现问题,启动不了,现在用一台新的进行替换。
三台主机
172.20.30.189
172.20.30.190
172.20.30.191
问题主机
172.20.30.190
原先三台机器都正常,如下图所示:
我们先修改下下190的ip,然后reboot一下,发现190从集群节点中消失
下面我们用一台新的机器进行替换,
前提:节点故障之前保存所有节点配置文件最主要的是data目录下的grastate.dat文件(注意:一定要是文件本身,拷贝其中内容无效)
1:修改新节点的主机名和ip,保证与故障节点一致
a:修改主机名,保证与故障主机节点一致
b:修改主机ip,保证与故障主机节点一致
c:重启下网卡服务
systemctl restart network
2:修改本地主机映射关系,将故障节点的信息拷贝上去
3:重启下机器
reboot
4:修改mariadb集群的配置文件,保证相关信息与故障节点一致
vim /etc/my.cnf.d/server.cnf
5:初始数据库
/usr/bin/mysql_install_db --defaults-file=/etc/my.cnf.d/server.cnf --user=mysql --datadir=/usr /local /mysql/data --basedir=/usr
这个可以按照自己配置进行修改
6:将grastate.dat文件拷贝过去
7:给mysql 添加grastate.bat添加操作权限
chown -R mysql /usr/local/mysql/data/grastate.dat
chgrp -R mysql /usr/local/mysql/data/grastate.dat
8:重启mariadb集群服务
Service mariadb restart
9:查看节点是否加入集群
10:数据同步完成
检查下了数据,发现数据同步需要一段时间,在这段时间无法插入数据,感觉这个应该是和mariadb(主主集群)机制有关系。