背景
有个3节点的验证环境,最开始搭了基于binlog的传统主从同步。后来升级为group replication结构,primary node启动正常,2个后加入的node 状态一直处于recovering状态。
以下记录解决的过程,具体内部原理不是很清楚,可能有的步骤不一定发挥了作用。
解决过程
1.修改hostname
看官档的部署和别人的方案,节点hostname都是不同的。我的都是默认的localhost.localdomain,不知道在互相通讯时,这个名称一样的会否导致混乱。因此改的名字。
1 hostnamectl set-hostname s1
2 修改hosts,增加127.0.0.1与s1的映射。
其他服务同样操作。
修改主机名后,需要重启mysql实例;mysql的pid文件和日志包含主机名,修改后,原来的也就不可用了。需要Reset。
2.重置master和slave信息
用Reset master和Reset slave all命令重置配置信息。