1. 程式人生 > >MySQL主從庫配置備忘

MySQL主從庫配置備忘

使用的MySQL版本為5.7

一、主庫配置內容

1、修改my.ini檔案:

 在[mysqld]如下新增配置

 server-id=1    #主庫和從庫需要不同的id

 log-bin=mysql-bin

 #需要同步的資料庫名,如有多個就寫多條

 binlog-do-db=dbName1 #同步的資料庫

 binlog-do-db=dbName2 #同步的資料庫

 #不需要同步的資料庫名,與上面的binlog-do-db為互斥關係,一般只需要配置一種即可

 binlog-ignore-db=dbName    #不需要同步的資料庫

2、新增新使用者(也可用老使用者)

3、重啟MySQL服務

4、輸入show master status;命令檢視主庫資訊,記錄下File和Position的資訊,在配置從庫時需要用到

二、從庫配置內容

1、修改my.ini檔案:

 在[mysqld]如下新增配置

 server-id=2    #和主庫的id不能一樣

 replicate-do-db=dbName1 #需要同步的表

 replicate-do-db=dbName2 #需要同步的表

 #與主庫中的配置類似

 replicate-ignore-db=dbName1 #不需要同步的表

2、重啟MySQL服務

3、執行命令如下:

change master to master_host='192.168.xxx.xxx', master_port=3306,master_user='主庫中的使用者名稱',master_password='使用者密碼',master_log_file='之前記錄的file的資訊',master_log_pos=之前記錄的position的資訊

4、執行命令START SLAVE;啟動從庫

5、執行命令SHOW SLAVE STATUS;檢視SLAVE_IO_RUNNING和SLAVE_SQL_RUNNING狀態是否為YES

以上都做完後配置完成,在主庫中新增表或資料後檢查從庫是否也同步修改了

注:網上有些比較老的文章配置從庫my.ini檔案時需要新增一些master-host、master-user、master-xxxx等配置項,這些配置項在5.7版本已不能使用,需要使用change master命令代替

另外如果要配置雙主庫的話每個配置檔案上還需要再配置兩個引數:auto_increment_offset和auto_increment_increment

auto_increment_offset是設定主鍵偏移量,auto_increment_increment是設定主鍵增量,大致配置如下:

主庫:

#設定主鍵偏移量
auto_increment_offset=2
#設定主鍵增量
auto_increment_increment=2

從庫:

#設定主鍵偏移量
auto_increment_offset=1
#設定主鍵增量
auto_increment_increment=2