MySQL 8 是目前廣泛使用的關系型數據庫管理系統,它具有很好的擴展性和穩定性。而對于需要對 MySQL 進行高可用性部署的場景,多數人會選擇使用 MySQL 8 的組復制功能。在該功能下,主節點可以自動切換,保證高可用性并減少人工干預。以下是 MySQL 8 組復制的安裝部署過程。
1. 配置主節點
# 安裝 MySQL 8 sudo apt-get update sudo apt-get install mysql-server # 配置啟用組復制 sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf # 將 bind-address 設置為 主節點的 IP 地址 bind-address = 192.168.1.1 server-id = 1 log_bin = /var/log/mysql/mysql-bin.log gtid_mode = ON enforce_gtid_consistency = ON binlog_format = ROW plugin_load = group_replication.so # 重啟 MySQL sudo service mysql restart # 打開 MySQL Shell 客戶端 sudo mysqlsh # 創建用戶并授權 mysql-js>var rootPwd = 'xxxxxxxx'; mysql-js>dba.createUser('admin', {password: rootPwd}); mysql-js>dba.grantAllPrivileges('admin@%', {clusterAdmin: true}); # 配置組復制 mysql-js>var cluster = dba.createCluster('cluster1', {autoRejoinTries: 5, autoRejoinWait: 5000}); mysql-js>cluster.status(); mysql-js>exit;
2. 配置從節點
# 安裝 MySQL 8 sudo apt-get update sudo apt-get install mysql-server # 配置啟用組復制 sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf # 將 bind-address 設置為 從節點的 IP 地址 bind-address = 192.168.1.2 server-id = 2 log_bin = /var/log/mysql/mysql-bin.log gtid_mode = ON enforce_gtid_consistency = ON binlog_format = ROW plugin_load = group_replication.so # 重啟 MySQL sudo service mysql restart # 打開 MySQL Shell 客戶端 sudo mysqlsh # 加入組復制中 mysql-js>cluster = dba.getCluster('cluster1'); mysql-js>cluster.addInstance('admin@192.168.1.2:3306', {password: rootPwd}); mysql-js>cluster.status(); mysql-js>exit;
此時,主節點和從節點均已成功配置為 MySQL 8 組復制集群。您可以嘗試向主節點寫入信息,驗證信息是否同步到從節點。
下一篇mysql8置連接數