如何启动 Percona XtraDB Cluster 已翻译 100%

oschina 投递于 2013/01/30 08:24 (共 4 段, 翻译完成于 01-30)
阅读 1124
收藏 2
0
加载中

在 Percona XtraDB Cluster 5.5.28 版本之前,最简单的加入集群的方法是在 my.cnf 的 [mysqld_safe] 使用 wsrep_urls 配置。

假设我们有一个三个节点的集群:

node1 = 192.168.1.1
node2 = 192.168.1.2
node3 = 192.168.1.3

那么可使用下列配置进行定义:

wsrep_urls=gcomm://192.168.1.1:4567,gcomm://192.168.1.2:4567,gcomm://192.168.1.3:4567
上述配置出现在三个节点的 my.conf 配置中。当 PXC (mysqld) 启动时,节点会尝试加入配置中的第一个 IP ,如果该 IP 没有运行则尝试下一个 IP,如果最终没有一个 IP 可加入的话,mysqld 就启动失败。
红薯
翻译于 2013/01/30 08:27
2

为了避免当所有节点都无法加入导致启动失败的这个问题,我们可以这样配置:

wsrep_urls=gcomm://192.168.1.1:4567,gcomm://192.168.1.2:4567,gcomm://192.168.1.3:4567,gcomm://

这个特性非常好,特别是用户不想在启动第一个节点初始化集群时不想修改 my.cnf 配置的情况,或者用户通过配置管理系统进行自动部署的情况。

红薯
翻译于 2013/01/30 08:30
2

不过,从 5.5.28 版本开始,wsrep_urls 配置已经废弃,那么有什么更好的替代方案呢?

新版本中改用了 [mysqld] 这个配置段,你可通过 wsrep_cluster_address 来设置集群,语法如下:

wsrep_cluster_address=gcomm://192.168.1.1,192.168.1.2,192.168.1.3
你所看到的,不再需要指定端口了,而且 gcomm 只需要指定一次。
Note:In Debian and Ubuntu, the ip of the node cannot be present in that variable due to a glibc error:

130129 17:03:45 [Note] WSREP: gcomm: connecting to group 'testPXC', peer '192.168.80.1:,192.168.80.2:,192.168.80.3:'
17:03:45 UTC - mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
[...]
/usr/sbin/mysqld(_Z23wsrep_start_replicationv+0x111)[0x664c21]
/usr/sbin/mysqld(_Z18wsrep_init_startupb+0x65)[0x664da5]
/usr/sbin/mysqld[0x5329af]
/usr/sbin/mysqld(_Z11mysqld_mainiPPc+0x8bd)[0x534fad]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed)[0x7f3bb24b676d]
/usr/sbin/mysqld[0x529d1d]


红薯
翻译于 2013/01/30 08:32
1
那么,如果所有节点都不可用时如何初始化集群呢? 有两种方法:
  • 修改 my.cnf 并设置 wsrep_cluster_address=gcomm:// ,启动后再来修改配置,我不喜欢这种做法。
  • 使用下面这个命令来启动 mysql (支持 RedHat 和 CentOS 系统)
    /etc/init.d/myslqd start --wsrep-cluster-address="gcomm://"
    这样就无需修改 my.cnf,我推荐使用这种方法



红薯
翻译于 2013/01/30 08:35
1
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
加载中

评论(0)

返回顶部
顶部