[其它] MYSQL 5.0異地同步備份
本文作用:使用MYSQL內建功能,將兩台MYSQL SERVER的資料,由其中一台同步備份到另外一台好處:倒站的時候就知道了~
要同步備份的資料庫名稱:LAOZHAO
網路環境介紹:兩台電腦不在同一網域。
MASTER
IP:210.111.222.111(參考IP)
OS :Windows 2003
web:Appserv 2.5.6(MYSQL版本 5.0)
SLAVE
IP:50.123.123.123 (參考IP)
OS :Windows XP SP2
web:Appserv 2.5.6(MYSQL版本 5.0)
打開 my.ini on MASTER
加入
server-id = 1
log-bin
set-variable=binlog-ignore-db=mysql
在MASTER的MYSQL SERVER
新增一名使用者(ID:dqno1password:11111111),並給予相關權限
參考指令如下:
GRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO dqno1@50.123.123.123 IDENTIFIED BY '11111111';
STOP mysql server on MASTER,接著打包MYSQL底下的data資料夾(參考路徑C:\appserv\mysql\data\),整個用來取代SLAVE上的data資料夾,取代前請先停止SLAVE上的mysql server ,否則可能無法取代。
接著到SLAVE編輯MY.INI,加入這一大串
server-id = 2
master-host = 210.111.222.111 #MASTER IP or domain name or HOSTNAMEmaster-user = dqno1#username
master-password = 11111111 #userpassword
master-port = 3306 #mysql server port
set-variable=replicate-ignore-db=mysql #不更新的資料庫名稱
set-variable=replicate-do-db=LAOZHAO #要更新的資料庫名稱接著啟動MASTER及SLAVE上的MYSQL SERVER登入SLAVE的MYSQL,輸入下面指令mysql>SHOW SLAVE STATUS\G;
注意這三行狀態若是如下,表示已經完成設定。
Slave_IO_State: Waiting for master to send event
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
請自行注意防火牆相關設定
TIP:設定途中,如發現SLAVE的MY.INI中設定檔設定錯誤,修改後,RESTART MYSQL仍無效果,請自行修改C:\AppServ\MySQL\data底下的master.info,再重啟MYSQL即可
該死的滑鼠害我這篇文章重打三次,每次重打中文字增多,到最後變成這付德行 :smo ,連帶一些詳細的說明也不想打了,其他參數自行參考官方文件吧~
參考文章:
http://www.phpmore.com/?a=review_display&id=17
http://imysql.cn/?q=node/61 :smo 單向同步完成之後...
接下來要搞的當然就是雙向同步..
沒想到剛剛看到一篇....
= =原來雙向同步的方法就是那麼愚蠢.....
只要把兩台MYSQL同時設為MASTER及SLAVE..
讓兩台互相把對方當作MASTER..........
:smo 真的有那麼簡單嘛?
:smo 下午來玩玩看.....
補充,雙向同步備份~
做法:STOP兩台MYSQL
分別刪除C:\AppServ\MySQL\data底下的master.info
將兩台皆設為Master & Slave
example:
HOST1
server-id = 1
log-bin
set-variable=binlog-ignore-db=mysql
master-host = 210.111.222.111 #HOST2 IP
master-user = dqno1#username
master-password = 11111111 #userpassword
master-port = 3306 #mysql server port
set-variable=replicate-ignore-db=mysql #不更新的資料庫名稱
set-variable=replicate-do-db=LAOZHAO #要更新的資料庫名稱
HOST2
server-id = 2
log-bin
set-variable=binlog-ignore-db=mysql
master-host = 210.111.222.xxx #HOST1 IP
master-user = dqno1#username
master-password = 11111111 #userpassword
master-port = 3306 #mysql server port
set-variable=replicate-ignore-db=mysql #不更新的資料庫名稱
set-variable=replicate-do-db=LAOZHAO #要更新的資料庫名稱
重新啟動~
頁:
[1]