溫馨提示×

centos mysql集群搭建方案

小樊
52
2025-03-29 13:49:20
欄目: 云計算

在CentOS系統上搭建MySQL集群可以采用多種方案,其中最常見的是基于主從復制的高可用性方案。以下是一個基本的CentOS MySQL主從復制集群搭建步驟:

環境準備

  1. 更新系統
sudo yum update -y
  1. 安裝必要的工具
sudo yum install curl wget -y
  1. 安裝MySQL
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
sudo yum install mysql-community-server -y

配置MySQL服務

  1. 啟動MySQL服務
sudo systemctl start mysqld
sudo systemctl enable mysqld
  1. 查找初始密碼
sudo grep 'temporary password' /var/log/mysqld.log
  1. 登錄MySQL并修改密碼
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword';

配置主從復制

主服務器配置

  1. 編輯主服務器配置文件 /etc/my.cnf
[mysqld]
server-id=1
log_bin=/var/log/mysql/mysql-bin.log
binlog_do_db=example_database
  1. 重啟MySQL服務
sudo systemctl restart mysqld
  1. 創建復制用戶
mysql -uroot -p
CREATE USER 'mastj'@'%' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'mastj'@'%';
FLUSH PRIVILEGES;
  1. 鎖定數據庫并導出數據(如果有現有數據):
mysql -uroot -p
FLUSH TABLES WITH READ LOCK;
SELECT * INTO OUTFILE '/tmp/data.sql' FROM orders;
UNLOCK TABLES;

從服務器配置

  1. 編輯從服務器配置文件 /etc/my.cnf
[mysqld]
server-id=2
relay-log=/var/log/mysql/mysql-relay-bin.log
read-only=1
  1. 重啟MySQL服務
sudo systemctl restart mysqld
  1. 配置從服務器復制
mysql -uroot -p
CHANGE MASTER TO
    MASTER_HOST='192.168.1.18',
    MASTER_USER='mastj',
    MASTER_PASSWORD='123456',
    MASTER_LOG_FILE='mysql-bin.000003',
    MASTER_LOG_POS=2005;
START SLAVE;
  1. 檢查復制狀態
mysql -uroot -p
SHOW SLAVE STATUS\G;

驗證集群

通過連接到MySQL并運行特定的查詢來驗證集群是否構建成功,例如:

SHOW VARIABLES LIKE 'version';
SHOW VARIABLES LIKE 'datadir';

此外,還可以考慮使用Percona XtraDB Cluster (PXC)或MySQL Group Replication (MGR)等更高級的集群方案,這些方案提供了更高的可用性和擴展性。

請注意,以上步驟是一個基本的主從復制集群搭建示例,實際生產環境中可能需要更多的配置和優化。此外,還需要考慮網絡配置、防火墻設置、監控和日志管理等因素。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女