我一直在审查XtraDB集群,并使用4个实例在Openstack上创build了一个PoC环境,这在我的弹性testing期间已经下降了。
根据pxc文档: http ://www.percona.com/doc/percona-xtradb-cluster/howtos/virt_sandbox.html其中涵盖了3节点安装,我select了第四。
所以我的问题如下:
根据您在节点1上的症状,您正在使用
wsrep_cluster_address = gcomm会议://
在你的configuration文件中,这意味着节点将启动一个新的群集。 您可以使用wsrep_cluster_sizevariables在node1上为1,在其他上为3。 如果要将node1join到已经存在的集群中,则应该指定
wsrep_cluster_address = gcomm://(这里是一个正在运行的节点的ip)
在这种情况下,node1将重新join群集。
一些额外的想法:
由于PXC(Percona Xtradb集群)中的仲裁机制,因此不build议在4个节点上运行它。 build议使用奇数个节点,所以在networking拆分的情况下,拆分簇的一部分可以占多数。
您可以使用[mysqld_safe]部分中的wsrep_urls来代替wsrep_cluster_address。
免责声明:我为Percona工作。
对这个问题的进一步研究似乎是一个可行的方法(让这个答案暂时不被接受,以更好的方式答复某人):
此设置似乎至less通过断开连接来减less任何节点的损失,并且节点同步的恢复没有问题。
如果Mysql不会启动并且原因是损坏的数据库表。
复制服务器正在做什么,并从停止服务器为客户端数据库获取良好的副本。
它从$ MYSQLHOME文件通过数据库是DB。
我们使用scp来移动好的文件,然后通过启动坏服务器的mysql来再次启动同步。