MySQL Replication(zt)

 

MySQL Replication 可以把資料庫即時複製到另一台主機, MySQL 備援、Load Balance 都會用到.

範例: A(Master, IP:10.1.1.1) -> B(Slave)

先把兩邊的 MySQL 停掉, 把 A 的資料庫複製到 B, 用 tar 的就可以了.

A(Master) my.cnf 設定

[mysqld]

server-id=1

log-bin

binlog-do-db=dbname

B(Slave) my.cnf 設定

[mysqld]

server-id=2

log-bin

master-host=10.1.1.1

master-user=root

master-password=password

replicate-do-db=dbname

log-slave-updates

Slave 必需有權限可以存取 Master 的指定資料庫, 設完後啟動兩邊的 MySQL.

檢查:

在 A 進入 mysql -u root

show master status; 看看有無指定資料庫的資料.

在 B 進入 mysql -u root

show slave status; 看看有無指定資料庫的資料, 並且有兩個 Yes.

測試:

在 A 指定資料庫建立一個新的 Table, 看看 B 有沒有自動建立.

若無法成功, 把兩邊的 MySQL 停掉, 到 MySQL 資料目錄(預設在/var/lib/mysql),

rm -f *-bin.* *.info

再把兩邊的 MySQL 啟動.

ref. MySQL Replication 設定分享

原文地址:https://www.cnblogs.com/d9394/p/10611792.html