首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法启动MySQL Galera群集中的第二个节点

问无法启动MySQL Galera群集中的第二个节点
EN

Stack Overflow用户
提问于 2013-12-02 22:17:29
回答 1查看 4.9K关注 0票数 0

所有操作都在Debian7虚拟机中执行。安装了两个节点: galera replicator、codership的mysql galera、percona-xtrabackup、netcat-openbsd (percona-xtrabackup需要)。第三个节点只有galera replicator,并在garbd运行时充当仲裁器。

节点#1上的配置(192.168.0.102)

代码语言:javascript
复制
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_provider_options="gcache.size=2G"
wsrep_cluster_name="clusterTest"
wsrep_cluster_address="gcomm://"
wsrep_node_name="node-1"
wsrep_node_address=192.168.0.102
wsrep_node_incoming_address=192.168.0.102
wsrep_slave_threads=16
wsrep_sst_method=xtrabackup
wsrep_sst_receive_address=192.168.0.102
wsrep_sst_auth=root:somepass

节点#2上的配置(192.168.0.103)

代码语言:javascript
复制
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_provider_options="gcache.size=2G"
wsrep_cluster_name="clusterTest"
wsrep_cluster_address="gcomm://192.168.0.102"
wsrep_node_name="node-2"
wsrep_node_address=192.168.0.103
wsrep_node_incoming_address=192.168.0.103
wsrep_slave_threads=16
wsrep_sst_method=xtrabackup
wsrep_sst_receive_address=192.168.0.103
wsrep_sst_auth=root:somepass
wsrep_sst_donor="node-1"

第一次运行时,只有node-1有一个用于测试的数据库,我们称其为testDB。

我的工作是:

代码语言:javascript
复制
1. node-1> service mysql start
Result: node is working, testDB is accessible from any host and the node itself.
2. node-3> garbd --address gcomm://192.168.0.102,192.168.0.103 --group "clusterTest"
Resutl: the cluster size is 2.
3. node-2> service mysql start
Result: the cluster size is 3, but the init-script reports that service start failed, however the processes are running, the sst is performed.

此外,我无法访问在node-2上运行的mysql:

代码语言:javascript
复制
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)

从远程主机:

代码语言:javascript
复制
PHP Warning:  mysqli::mysqli(): (HY000/2003): Can't connect to MySQL server on '192.168.0.103' (111)

来自node-1的群集状态:

代码语言:javascript
复制
wsrep_local_state_comment    | Donor/Desynced
wsrep_incoming_addresses     | 192.168.0.102:3306,,192.168.0.103:3306
wsrep_cluster_conf_id        | 3                                     
wsrep_cluster_size           | 3   

如果我在wsrep_provider设置为"none“的情况下在node-2上启动mysql,则可以从本地和远程主机完全访问数据库,并且与node-1上的数据库相同。如果我再次启动群集,情况会重复,node-2仅对其他节点可见,群集变为去同步,并且无法从控制台或远程主机访问node-2。

EN

回答 1

Stack Overflow用户

发布于 2013-12-20 02:06:33

在对Galera问题进行故障排除时,最有用的工具是MySQL错误日志。在Debian中,默认情况下它们位于/var/log/syslog中。

看起来您正在使用Node 1来引导您的集群。让你的wsrep_cluster_address设置正确是至关重要的。两个节点的设置应如下所示:

代码语言:javascript
复制
Node 1

wsrep_cluster_address=gcomm://


Node 2

wsrep_cluster_address=gcomm://192.168.0.102,192.168.0.103
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20330440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档