![](/img/trans.png)
[英]MariaDB/Galera: Is it safe to connect MariaDB 10.4 nodes to a MariaDB 10.1 cluster?
[英]Can't add nodes to galera mariadb 10.1 cluster
我正在尝试在Centos 7上设置galera MariaDB 10.1集群。这是我的主配置:
[mysqld]
wsrep_cluster_address="gcomm://10.47.246.45,10.47.246.9"
wsrep_node_address="10.47.246.45"
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
当我键入
SHOW GLOBAL STATUS LIKE 'wsrep_cluster_size';
我得到这个输出
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| wsrep_cluster_size | 1 |
+--------------------+-------+
这是我要添加的节点上的配置
的[mysqld]
wsrep_cluster_address="gcomm://10.47.246.45,10.47.246.9"
wsrep_node_address="10.47.246.9"
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
和mysql服务启动没有任何错误,使用:
service mysql start --wsrep-new-cluster
这是来自的输出
SHOW GLOBAL STATUS LIKE 'wsrep_cluster_size';
我得到他的输出
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| wsrep_cluster_size | 0 |
+--------------------+-------+
知道我的配置有什么问题吗?
首先,我想建议在Galera群集中至少使用三个节点,以防止在那里出现头脑混乱的情况。
与第一台主机的Galera群集设置相关的正确配置是(其他主机应具有相同的模板):
[mysqld]
log_error = /var/log/mysql/mysql-error.log
default_storage_engine = InnoDB
binlog_format = ROW
wsrep_on = ON
wsrep_provider = /usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address = "gcomm://<node1_ip>,<node2_ip>,<node3_ip>"
wsrep_cluster_name = cluster
wsrep_node_name = <node1_name>
wsrep_node_address = <node1_ip>
innodb_autoinc_lock_mod = 2
wsrep_sst_method = rsync
要启动Galera集群,只需在第一个节点上执行以下操作:
# galera_new_cluster
检查您的集群是否已创建:
# mysql -e "show status like '%wsrep_cluster%'"
+--------------------------+--------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------+
| wsrep_cluster_conf_id | 1234 |
| wsrep_cluster_size | 1 |
| wsrep_cluster_state_uuid | 020e3d69-2b31-11e7-9723-4b205d7b7e0c |
| wsrep_cluster_status | Primary |
+--------------------------+--------------------------------------+
并在其他主机上启动MariaDB
:
systemctl start mariadb
节点应加入您的Galera群集。
如果仍然无法正常工作,请遵循/var/log/mysql/mysql-error.log
日志
我遇到了同样的问题,每个ny节点似乎都启动了自己的小型1节点集群。 解决方案:在/usr/lib/systemd/system/mariadb.service中查找有关第30行的信息:
ExecStart = / usr / sbin / mysqld $ MYSQLD_OPTS $ _WSREP_NEW_CLUSTER $ _WSREP_START_POSITION
除节点10.47.246.45以外,在所有其他节点上除去$ WSREP_NEW_CLUSTER并保存配置。 确保从10.47.246.45上的galera_new_cluster开始,一旦运行,则使用systemctl逐个启动其他节点(或服务mysql启动)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.