溫馨提示×

Debian MySQL主從復制實現

小樊
44
2025-04-07 22:20:28
欄目: 云計算

在Debian系統上實現MySQL的主從復制(Master-Slave Replication)可以按照以下步驟進行。以下是一個基本的指南,假設你已經安裝了MySQL服務器。

1. 準備工作

1.1 安裝MySQL

確保在主服務器和從服務器上都安裝了MySQL。你可以使用以下命令安裝:

sudo apt update
sudo apt install mysql-server

1.2 配置主服務器

編輯主服務器的MySQL配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf(或 /etc/mysql/my.cnf),添加或修改以下內容:

[mysqld]
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = your_database_name  # 替換為你想要復制的數據庫名稱

然后重啟MySQL服務:

sudo systemctl restart mysql

1.3 配置從服務器

編輯從服務器的MySQL配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf(或 /etc/mysql/my.cnf),添加或修改以下內容:

[mysqld]
server-id = 2
relay_log = /var/log/mysql/mysql-relay-bin.log
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = your_database_name  # 替換為你想要復制的數據庫名稱

然后重啟MySQL服務:

sudo systemctl restart mysql

2. 創建復制用戶

在主服務器上創建一個用于復制的用戶,并授予相應的權限:

CREATE USER 'replicator'@'%' IDENTIFIED BY 'your_password';  # 替換為你的密碼
GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%';
FLUSH PRIVILEGES;

3. 獲取主服務器的二進制日志位置

在主服務器上執行以下命令,獲取當前的二進制日志文件名和位置:

SHOW MASTER STATUS;

記下 FilePosition 的值,稍后在從服務器上會用到。

4. 配置從服務器

在從服務器上執行以下命令,配置主服務器的信息:

CHANGE MASTER TO
MASTER_HOST='master_ip_address',  # 替換為主服務器的IP地址
MASTER_USER='replicator',
MASTER_PASSWORD='your_password',  # 替換為你的密碼
MASTER_LOG_FILE='recorded_log_file_name',  # 替換為你之前記下的日志文件名
MASTER_LOG_POS=recorded_log_position;  # 替換為你之前記下的日志位置

5. 啟動從服務器復制

在從服務器上執行以下命令,啟動復制:

START SLAVE;

6. 驗證復制狀態

在從服務器上執行以下命令,檢查復制狀態:

SHOW SLAVE STATUS\G

確保 Slave_IO_RunningSlave_SQL_Running 都是 Yes。如果不是,檢查錯誤信息并進行相應的調整。

7. 測試復制

在主服務器上創建一個測試數據庫或表,并插入一些數據,然后在從服務器上檢查是否同步成功。

-- 在主服務器上
CREATE DATABASE test_db;
USE test_db;
CREATE TABLE test_table (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50));
INSERT INTO test_table (name) VALUES ('Test Data');

-- 在從服務器上
SHOW DATABASES;
USE test_db;
SHOW TABLES;
SELECT * FROM test_table;

如果數據同步成功,說明主從復制配置成功。

注意事項

  1. 防火墻設置:確保主服務器和從服務器之間的網絡連接是暢通的,防火墻允許MySQL端口(默認3306)的通信。
  2. 數據一致性:在配置復制之前,確保主服務器和從服務器上的數據是一致的。
  3. 監控和日志:定期檢查復制狀態和日志文件,以便及時發現和解決問題。

通過以上步驟,你應該能夠在Debian系統上成功配置MySQL的主從復制。

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