配置
假設有兩個資料庫伺服器192.168.0.1和192.168.0.2,後面用1表示168.0.1,2表示168.0.2
首先配置1
用root進入mysql添加一個授權2可以通路的使用者
代碼:
mysql>GRANT all privileges ON *.* TO tongbu@'192.168.0.2' IDENTIFIED BY '123456';
退出mysql編輯mysql配置檔案
vi /etc/my.cnf
添加或修改以下内容:
[client]
default-character-set=utf8
[mysqld]
log-bin=mysql-bin
server-id=1
master-host=192.168.0.2
master-user=tongbu
master-password=123456
master-port=3306
master-connect-retry=30 #斷網後間隔30秒重連
binlog-do-db=mysql #要備份的庫
replicate-do-db=mysql
skip-name-resolve #快速登入跳過使用者解析
back_log = 500
max_connect_errors = 100
max_connections=1000
重新開機mysql服務
service mysqld restart
至此1配置完畢,
然後配置2,
步驟同1
mysql>GRANT all privileges ON *.* TO tongbu@'192.168.0.1' IDENTIFIED BY '123456';
server-id=2
master-host=192.168.0.1
binlog-do-db=mysql
skip-name-resolve
max_connections = 1000
slave_skip_error=1062
sync_binlog=1 #每作一次操作同步一次
至此2也配置完畢
注意:2裡面的配置有些不同是因為我把1做為生産庫,2隻做備份
最後進入1的mysql檢視master狀态
mysql>show master status;
顯示如下:
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
| mysql-bin.000019 | 11809679 | mysql | |
1 row in set (0.00 sec)
我們把file=mysql-bin.000019和position=11809679 記下來
然後進入2的mysql
mysql>stop slave;
mysql>change master to master_log_file='mysql-bin.000019',master_log_pos=11809679
mysql>slave start;
檢視同步備份狀态
mysql>show slave status\G
其中的
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
都是Yes則已經處于正常同步狀态了
本文轉自 chengxuyonghu 51CTO部落格,原文連結:http://blog.51cto.com/6226001001/1737240,如需轉載請自行聯系原作者