萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MYSQL的master/slave數據同步配置的例子

MYSQL的master/slave數據同步配置的例子

MYSQL的master/slave數據同步配置用到比較多就是主從配置了這樣可以實現數據實時同步備份了,下面我們來看一篇相關的教程吧。

我的測試環境.基本上數據是瞬間同步,希望對大家有幫助

redhat 9.0
mysql3.23.57

mysql數據同步備份

A服務器: 192.168.1.2 主服務器master

B服務器: 192.168.1.3 副服務器slave

A服務器設置

#mysql –u root –p
mysql>GRANT FILE ON *.* TO [email protected] IDENTIFIED BY ‘1234’;
mysql>\exit

上面是Master開放一個賬號backup密碼1234給IP:192.168.1.3有檔案處理的權限

mysqladmin –u root –p shutdown

備份Master所有數據庫..通常都用tar指令.

#tar –cvf /tmp/mysql.tar /var/lib/mysql

注意:tar的時候,MySQL是要在stop情況下

在A機器上修改/etc/my.cnf

在[mysqld]區段內加入參數

log-bin
server-id=1
sql-bin-update-same
binlog-do-db=vbb

重啟A服務器mysql

此時因為有加入log-bin參數,因此開始有index產生了,在/var/lib/mysql目錄下有.index檔案紀錄數據庫的異動log.

B服務器設置

設定/etc/my.cnf

在[mysqld]區段加入

master-host=192.168.1.2
master-user=backup
master-password=1234
master-port=3306
server-id=2
master-connect-retry=60 預設重試間隔60秒
replicate-do-db=vbb 告訴slave只做vbb數據庫的更新
log-slave-updates

將A上的mysql.tar copy到B上

用ftp傳B的/tmp

9.解壓縮
#cd /var/lib/

狀況測試

1.A跟B網絡及服務都正常情況下,由A端變化數據後,到B端浏覽數據,檢視是否有進行replication?!

2.模擬B當機,或是B不一定需要一直跟A有連接.

將由A端變化數據後,到B端浏覽數據,B點應該是沒有數據變化的

#tar xvf /tmp/mysql-snapshot.tar
#chown –R mysql:mysql mysql

1重啟B服務器的mysql

這時在/var/lib/mysql目錄會出現master.info,此檔案紀錄了Master MySQL server的信息.

狀況測試

1.A跟B網絡及服務都正常情況下,由A端變化數據後,到B端浏覽數據,檢視是否有進行replication?!

2.模擬B當機,或是B不一定需要一直跟A有連接.

將由A端變化數據後,到B端浏覽數據,B點應該是沒有數據變化的

copyright © 萬盛學電腦網 all rights reserved