服务器设置和教程 · 6 10 月, 2024

CentOS 7.1 下 MySQL 資料庫主從同步

CentOS 7.1 下 MySQL 資料庫主從同步

在現今的數據驅動世界中,資料庫的可用性和可靠性至關重要。MySQL 作為一個流行的開源資料庫管理系統,提供了主從同步的功能,這使得資料庫的擴展和備份變得更加高效。本文將介紹如何在 CentOS 7.1 上設置 MySQL 的主從同步,並提供詳細的步驟和示例。

什麼是主從同步?

主從同步是一種資料庫架構,其中一個資料庫(主資料庫)負責處理所有的寫入操作,而其他一個或多個資料庫(從資料庫)則用於讀取操作。這種架構不僅可以提高讀取性能,還能在主資料庫故障時提供備份。

環境準備

在開始之前,您需要準備兩台 CentOS 7.1 的伺服器,分別作為主伺服器和從伺服器。確保兩台伺服器都已安裝 MySQL,並且可以相互通信。

安裝 MySQL

sudo yum install mysql-server
sudo systemctl start mysqld
sudo systemctl enable mysqld

配置主伺服器

首先,您需要在主伺服器上進行一些配置:

  1. 編輯 MySQL 配置文件:
sudo vi /etc/my.cnf

在文件中添加以下行:

[mysqld]
server-id=1
log-bin=mysql-bin
binlog-do-db=your_database_name

這裡的 server-id 是主伺服器的唯一標識,log-bin 用於啟用二進制日誌,binlog-do-db 指定需要同步的資料庫。

  1. 重啟 MySQL 服務:
sudo systemctl restart mysqld
  1. 創建一個用於從伺服器連接的用戶:
mysql -u root -p
CREATE USER 'replica_user'@'%' IDENTIFIED BY 'your_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica_user'@'%';

配置從伺服器

接下來,您需要在從伺服器上進行配置:

  1. 編輯 MySQL 配置文件:
sudo vi /etc/my.cnf

在文件中添加以下行:

[mysqld]
server-id=2
  1. 重啟 MySQL 服務:
sudo systemctl restart mysqld
  1. 設置從伺服器連接到主伺服器:
mysql -u root -p
CHANGE MASTER TO
MASTER_HOST='主伺服器的IP',
MASTER_USER='replica_user',
MASTER_PASSWORD='your_password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=0;

請根據實際情況替換 MASTER_LOG_FILEMASTER_LOG_POS 的值,這些值可以通過在主伺服器上執行 SHOW MASTER STATUS; 獲得。

  1. 啟動從伺服器的同步:
START SLAVE;

檢查同步狀態

在從伺服器上,您可以使用以下命令檢查同步狀態:

SHOW SLAVE STATUSG

如果一切正常,您應該會看到 Slave_IO_RunningSlave_SQL_Running 的值均為 Yes

總結

通過以上步驟,您已經成功在 CentOS 7.1 上設置了 MySQL 的主從同步。這種架構不僅提高了資料庫的可用性,還能有效分擔讀取負載。對於需要高可用性和擴展性的應用來說,主從同步是一個理想的解決方案。

如果您正在尋找可靠的 香港VPS 解決方案,Server.HK 提供多種選擇,滿足不同需求的客戶。無論是資料庫管理還是網站托管,我們的 伺服器 都能為您提供穩定的支持。