MySQL Replication

| | Comments (0)

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 設定分享

Leave a comment

March 2009

Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

About this Entry

This page contains a single entry by Pank published on December 10, 2006 3:51 AM.

ASUS: TeleSky was the previous entry in this blog.

[PHP] File 'NONEXISTENT/charsets/?.conf' not found (Errcode: 2) is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.