我正在尝试在debian 8 jessie下工作MariaDB Galera 10.1。
我已经安装了所有必要的组件并进行了配置,但我无法正常工作。
节点构建为VPS。
节点1的配置:
[mysqld]
# Cluster node configurations
wsrep_cluster_address="gcomm://172.16.0.102,172.16.0.112"
wsrep_node_address="172.16.0.102"
wsrep_node_name='n1'
wsrep_cluster_name='cluster'
innodb_buffer_pool_size=400M
# Mandatory settings to enable Galera
wsrep_provider=/usr/lib/galera/libgalera_smm.so
binlog_format=ROW
default-storage-engine=InnoDB
innodb_autoinc_lock_mode=2
innodb_doublewrite=1
query_cache_size=0
bind-address=0.0.0.0
# Galera synchronisation configuration
wsrep_sst_method=rsync
节点2的配置:
[mysqld]
# Cluster node configurations
wsrep_cluster_address="gcomm://172.16.0.102,172.16.0.112"
wsrep_node_address="172.16.0.112"
wsrep_node_name='n2'
wsrep_cluster_name='cluster'
innodb_buffer_pool_size=400M
# Mandatory settings to enable Galera
wsrep_provider=/usr/lib/galera/libgalera_smm.so
binlog_format=ROW
default-storage-engine=InnoDB
innodb_autoinc_lock_mode=2
innodb_doublewrite=1
query_cache_size=0
bind-address=0.0.0.0
# Galera synchronisation configuration
wsrep_sst_method=rsync
当我尝试在节点1引导程序命令
上运行时service mysql bootstrap
失败并出现错误
May 13 15:59:28 test mysqld[2397]: 2016-05-13 15:59:28 139843152635840 [ERROR] WSREP: failed to open gcomm backend connection: 110: failed to reach primary view: 110 (Connection timed out)
May 13 15:59:28 test mysqld[2397]: at gcomm/src/pc.cpp:connect():162
May 13 15:59:28 test mysqld[2397]: 2016-05-13 15:59:28 139843152635840 [ERROR] WSREP: gcs/src/gcs_core.cpp:gcs_core_open():208: Failed to open backend connection: -110 (Connection timed out)
May 13 15:59:28 test mysqld[2397]: 2016-05-13 15:59:28 139843152635840 [ERROR] WSREP: gcs/src/gcs.cpp:gcs_open():1379: Failed to open channel 'cluster' at 'gcomm://172.16.0.102,172.16.0.112': -110 (Connection timed out)
May 13 15:59:28 test mysqld[2397]: 2016-05-13 15:59:28 139843152635840 [ERROR] WSREP: gcs connect failed: Connection timed out
May 13 15:59:28 test mysqld[2397]: 2016-05-13 15:59:28 139843152635840 [ERROR] WSREP: wsrep::connect(gcomm://172.16.0.102,172.16.0.112) failed: 7
May 13 15:59:28 test mysqld[2397]: 2016-05-13 15:59:28 139843152635840 [ERROR] Aborting
我正在使用的网络配置是私有的:
使用ProxmoxVE 4.0安装的2x DEDICATED服务器vRack网络中的服务器在VPS上配置为:
node1:172.16.0.102 //节点1在服务器1上
node2:172.16.0.112 //节点2在服务器2上
他们可以在私人网络上互相ping。
答案 0 :(得分:16)
由于MariaDB 10.1.8, systemd 是新的init,它影响了Galera在RPM和基于Debian的Linux发行版(在我的案例中为Ubuntu 16.04)上的引导方式。在以前的版本中,您会使用service mysql start --wsrep-new-cluster
或service mysqld bootstrap
之类的内容,但由于失败而不再有效:
[ERROR] WSREP: gcs/src/gcs_core.cpp:gcs_core_open():208: Failed to open backend connection: -110 (Connection timed out)
要解决此问题,请运行:
galera_new_cluster
请注意您只需要在第一个'上运行此脚本。服务器即可。
要测试它是否正在运行,请输入带有mysql -u [your mysql user] -p
的mysql,然后运行
SHOW GLOBAL STATUS LIKE 'wsrep_cluster_size';
您应该看到类似的内容:
+--------------+
| cluster size |
+--------------+
| 1 |
+--------------+
以防它对任何人都有用,这是我的my.conf(MariaDB 10.1.16)
[galera]
# Mandatory settings
wsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://[first ip],[second ip]"
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
此处有更多详情:
答案 1 :(得分:7)
我找到了解决方案和确切问题。
问题在于启动集群节点。需要从与MariaDB galera_new_cluster
一起安装的脚本开始,这将引导新的集群,之后一切正常。
希望这会有助于其他人在debian下传递配置。
答案 2 :(得分:1)
我遇到此错误,但在我的情况下,galera_new_cluster
不起作用。
解决问题,方法是编辑/var/lib/m.ysql/grastate.dat
文件并将safe_to_bootstrap
更改为1。
答案 3 :(得分:0)
就我而言,一切都已正确配置,此错误是由阻止 MariaDB 端口的防火墙引起的。我通过在所有服务器上允许它们来修复它:
ufw allow 3306,4567,4568,4444/tcp;
ufw allow 4567/udp;