一. 配置gtid主从复制
恢复mysql环境(所有节点都恢复)
1. 修改配置文件
server1
下面的是为了mha主从切换配置,可以由从节点升级为主节点
server2
server3
2. 安全初始化,配置主从复制
server1:
启动mysqld,查看临时密码
cat /var/log/mysqld.log | grep password
更改密码,创建复制用户并授权
server2:
server3:
测试主从复制:
主节点创建数据库
从节点查看
server2
server3
到这里主从复制配置结束
二、配置MHA
1. 安装mha-node(所有节点)
2. server4安装管理节点
3. 管理节点配置免密登陆
生成密钥
配置免密
注:这里是所有节点之间都要互相免密
4. 配置mha
在server4管理节点:
编辑配置文件
测试ssh连通性
masterha_check_ssh --conf=/etc/masterha/mha.cnf
检测权限
masterha_check_repl --conf=/etc/masterha/mha.cnf
在server1授权
grant all on *.* to root@'192.168.1.%' identified by 'Huayu+123';
再次检查
在server4查看mha状态
测试:
手动切换:
手动关闭server1的mysqld
systemctl stop mysqld.service
在server4操作
提示server1已经dead,询问是否切换
询问是否 将主节点从server1切换为server2
成功
在server3查看从节点状态
显然,主节点已经从server1转为server2了
恢复server1,设置为server2的从节点
自动切换:
server4后台监控
nohup masterha_manager --conf=/etc/masterha/mha.cnf &>/dev/null &
删除刚才手动切换后生成的文件,否则切换会失败
rm -rf mha.failover.complete
当前我们server2时主节点,server1和server3为从节点
现在手动停止server2
查看任务,已做
查看server3状态,主节点切换为server1
查看server1状态,显然已经切换为主节点了
自动主从切换已完成