在CentOS系统上搭建MySQL集群可以采用多种方案,包括MySQL NDB Cluster、MySQL Group Replication和Galera Cluster等。以下是使用MySQL Group Replication搭建集群的详细步骤:
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/selinuxenforcing/selinuxdisabled/g' /etc/selinux/config
setenforce 0
reboot
在所有节点上安装MySQL:
sudo yum install mysql-server
/etc/my.cnf
:sudo vi /etc/my.cnf
添加以下内容:[mysqld]
server-id=1
log-bin=/var/log/mysql/mysql-bin.log
binlog_format=ROW
gtid-mode=ON
enforce_gtid_consistency=TRUE
sudo mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql
sudo systemctl restart mysqld
sudo systemctl enable mysqld
在从节点上进行类似的配置,编辑MySQL配置文件 /etc/my.cnf
:
sudo vi /etc/my.cnf
添加以下内容:
[mysqld]
server-id=2
relay-log=/var/log/mysql/mysql-relay-bin.log
read-only=1
重启MySQL服务:
sudo systemctl restart mysqld
sudo systemctl enable mysqld
安装Galera Cluster:
sudo yum install galera
在管理节点上启动管理进程:
sudo /usr/local/mysql/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini
在数据节点上启动数据节点:
sudo /usr/local/mysql/bin/ndbd --initial
在主节点上启动MySQL服务:
sudo systemctl start mysqld
sudo systemctl enable mysqld
连接到主节点并检查集群状态:
mysql -u root -p
SELECT * FROM mysql.cluster_members;
如果在搭建过程中遇到问题,可以参考上述常见问题及解决方法进行排查。