首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Linux 下建立 MySQL 主從複寫(鏡像資料庫)完整步驟

     編輯:MySQL 資料庫相關知識

環境規劃

  • 主庫:192.168.0.205
  • 從庫:192.168.0.206
  • MySQL 版本:4.1(示範用,實務建議使用 5.7+ 或 8.0)

主庫設定

  1. 編輯 /etc/my.cnf,在 [mysqld] 區段加入:
server-id = 1
log-bin = binlog_name
  1. 建立複寫專用帳號,授權從庫讀取二進制日誌:
GRANT REPLICATION SLAVE, RELOAD, SUPER ON *.* 
TO 'slave'@'192.168.0.206' IDENTIFIED BY '123456';

從庫設定

  1. 先測試連線:/opt/mysql/bin/mysql -u slave -p -h 192.168.0.205
  2. 停止從庫服務,修改 /etc/my.cnf:
[mysqld]
server-id = 2
master-host = 192.168.0.205
master-user = slave
master-password = 123456
  1. 啟動從庫,進入 MySQL 執行同步:
/opt/mysql/share/mysql/mysql start
/opt/mysql/bin/mysql -u root -p
mysql> LOAD DATA FROM MASTER;

備註:亦可用資料匯入或直接複製資料目錄方式初始化從庫。

驗證複寫運作

  1. 主庫建立測試資料:
CREATE DATABASE sampdb;
CREATE TABLE new (name CHAR(20), phone CHAR(20));
INSERT INTO new VALUES ('abc', '0532555555');
  1. 從庫查詢確認:
SHOW DATABASES;
USE sampdb;
SHOW TABLES;
SELECT * FROM new;

若出現同樣資料,代表主從複寫已成功建立。

常用管理指令

  • SLAVE STOP; / SLAVE START; 停止/啟動複寫執行緒
  • SHOW SLAVE STATUS\G; 監控複寫狀態與延遲
  • PURGE MASTER LOGS TO 'binlog.000004'; 清理舊二進制日誌(謹慎操作)
  • CHANGE MASTER TO ...; 動態調整主庫連線參數
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved