实施环境
Centos 7.2V 1511
MySQL 5.5.52V
应用场景描述
先前未做双主双活集群;
一台数据库节点有历史数据;
现在要做双主双活Galera集群.
场景模拟演练
从另一个MySQL数据库中,备份所有数据,然后将数据导入到本地数据库节点.
安装同版本yum -y install mariadb-server.x86_64
开启数据库服务 : systemctl start mysql
初始化数据库
mysql_secure_installation
将备份数据导入新安装的数据库中:
数据库中也已经存入数据:
这将作为一个没有做数据库集群且已经运行了一段时间的具有历史数据的数据库节点.
yum --enablerepo=mariadb -y install MariaDB-Galera-server
同样是5.5.52的MariaDB-Galera-server软件会与5.5.52的MariaDB-server造成冲突!!
不能进行同版本的平滑过渡!!!
采用方法:
将原来安装的数据库软件卸载掉,然后安装这个集群软件
yum –y remove mariadb-server (数据库服务器端)
yum –y remove mariadb (数据库客户端)
直接卸载数据库对数据库中的数据不会产生丢失.数据在/var/lib/mysql 目录下存放着.
yum --enablerepo=mariadb -y install MariaDB-Galera-server
进入数据库后,查询数据仍然存在
此时,该数据库节点只是安装了集群软件,尚未进行集群的相关配置.
yum --enablerepo=mariadb -y install MariaDB-Galera-server
此时,该节点数据库中并没有相关的同步数据:
vim /etc/my.cnf.d/server.cnf
初始化新增加的数据库节点
mysql_secure_installation
防火墙和SLinux要求都要关闭
查看集群状态:
若是数据库集群软件如上操作不能平滑过渡,需要卸载冲突的数据库软件,在此期间需要停业务.
2.风险规避
在进行集群搭建时一定要做好数据库的全量备份!
3. 部署优化方案
建议集群中至少用3个数据库节点.原因,在一般情况下,3台数据库进行主主互备,当一台数据库宕机后,集群中至少还有两台数据库在进行主主互备.