master/slave主從數據庫手動同步之master-data master-data參數在建立slave數據庫的時候會經常用到,因為這是一個比較好用的參數,默認值為1,默認情況下,會包含change master to,這個語句包含file和position的記錄始位置。master-data=2的時候,在mysqldump出來的文件包含CHANGE MASTER TO這個語句,處於被注釋狀態 dump出文件
[root@aeolus1 c_learn]# mysqldump -uroot test --single-transaction --master-data=2 >master-data.sql 過濾出change master to信息 [root@aeolus1 c_learn]# grep -i "change master to" master-data.sql -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000012', MASTER_LOG_POS=107;
然後修改
change master to master_host='xx.xx.xx.xx', master_user='repl', master_password='repl', master_port=3306, master_log_file='mysql-bin.000012', master_log_pos=107;
然後slave從庫執行
mysql> change master to master_host='xx.xx.xx.xx', master_user='repl', master_password='repl', master_port=3306, master_log_file='mysql-bin.000012', master_log_pos=107;
然後
mysql>start slave
再次執行
mysql>show slave status;
需要注意的是:如果之前配置過服務器鏈接和密碼,從服務器不用reset slave,直接
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000012', MASTER_LOG_POS=107;即可。