我正在尝试在两台机器上设置 Percona XtraDB 集群。但我在让第二台机器启动并运行时遇到了可怕的时间。
我已将这篇文章用作参考,虽然它似乎几乎可以工作,但我可能缺少一些基本的东西。
机器如下:
Node 1: 192.168.2.10
Node 2: 192.168.2.11
两台机器都运行 Ubuntu 12.04 LTS。
节点 1 上的配置文件与文章类似。
当我使用上述配置启动此节点时,它可以正常工作。我可以通过命令行登录并运行
mysql> SHOW status LIKE 'wsrep%';
命令如它所描述的那样。一切看起来都很正常。
注意:节点 1 以前是标准的 mySQL 服务器,并且在 /var/lib/mysql 文件夹中已经有数据。这并没有影响它以上述配置正常启动。
然后我按照文章中关于添加新节点的步骤进行操作。这似乎是我遇到问题的地方。
我在节点 2 (192.168.2.11)上创建了 my.ini ,并使用了与文章类似的配置。
当我尝试使用service mysql start 启动服务时,它说它已启动,但我无法再通过命令行连接。
我尝试将节点 1 上的配置文件更改回原来的配置文件,然后启动节点 2,但这也不起作用。
我通过在命令行上使用 mysqld 命令简单地启动 mysql 来捕获日志,这是修剪后的结果(只有有错误的东西):
130206 14:53:56 [ERROR] WSREP: Failed to read 'ready <addr>' from: wsrep_sst_xtrabackup --role 'joiner' --address 'ip_address' --auth 'root:password' --datadir '/var/lib/mysql/' --defaults-file '/etc/mysql/my.cnf' --parent '14762'
Read: '(null)'
130206 14:53:56 [ERROR] WSREP: Process completed with error: wsrep_sst_xtrabackup --role 'joiner' --address 'ip_address' --auth 'root:password' --datadir '/var/lib/mysql/' --defaults-file '/etc/mysql/my.cnf' --parent '14762': 2 (No such file or directory)
130206 14:53:56 [ERROR] WSREP: Failed to prepare for 'xtrabackup' SST. Unrecoverable.
130206 14:53:56 [ERROR] Aborting
这是节点 2 连接时节点 1 报告的内容(节点 1 使用第一个配置文件 - 再次修剪)
130206 14:59:44 [ERROR] WSREP: failed to open gcomm backend connection: 110: failed to reach primary view: 110 (Connection timed out)
at gcomm/src/pc.cpp:connect():139
130206 14:59:44 [ERROR] WSREP: gcs/src/gcs_core.c:gcs_core_open():195: Failed to open backend connection: -110 (Connection timed out)
130206 14:59:44 [ERROR] WSREP: gcs/src/gcs.c:gcs_open():1290: Failed to open channel 'percona_cluster' at 'gcomm://192.168.2.11': -110 (Connection timed out)
130206 14:59:44 [ERROR] WSREP: gcs connect failed: Connection timed out
130206 14:59:44 [ERROR] WSREP: wsrep::connect() failed: 6
130206 14:59:44 [ERROR] Aborting
节点 2 报告类似。
如果有人可以帮助我解决我犯的愚蠢错误,将不胜感激。
(抱歉帖子的长度 - 我想提供尽可能多的信息)