1. 程式人生 > 實用技巧 >mysql主從複製教程

mysql主從複製教程

mysql主從複製教程

1、修改mysql的配置檔案(主節點,從節點都要修改)

[root@localhost mysql]#  vim /etc/my.cnf

2、分別在配置檔案中新增以下配置

mysql(master):主節點
       server-id=1
       log-bin=mysql-bin
       log-slave-updates
       slave-skip-errors=all
mysql(slave):從節點 ,從節點監聽的是主節點的日誌
       server-id=2
       log-bin=mysql-bin  //日誌的名字叫mysql-bin
log-slave-updates //設定主節點有更改時從節點自動更新 slave-skip-errors=all //從節點跳過所有錯誤的日誌 注意:兩個機器的server-id不能一樣

3 、重啟mysql服務

 [root@localhost mysql]#  systemctl restart mysqld

4、登陸mysql執行如下命令檢查配置是否生效(主節點、從節點都可以檢查)

 mysql >  SHOW VARIABLES like 'server_id';

5、登陸master主節點執行如下命令(在主節點上操作)

mysql >  show master status;  //
檢視主節點mysql日誌狀態

6、登陸slave從節點執行如下命令(在從節點上操作)

    mysql > change master to
            master_host='192.168.202.201',  //主節點IP地址
            master_user='root',  //主節點資料庫使用者名稱
            master_password='xxx',  //主節點資料庫的密碼
            master_log_file='mysql-bin.000001', //上圖中的file名字
            master_log_pos=154
; //上圖中position的數字
注意:如果這些內容寫錯的話,可以重新修改後再執行,系統會以最後一次執行內容為準

7 、開啟從節點同步(在從節點上操作)

         mysql >  start slave;  //開啟從節點同步

         mysql >  stop slave;  //停止(關閉)主從複製

8、檢視從節點同步狀態(在從節點上操作)

         mysql >  show slave status; 

         或者mysql >  show slave status\G;  // \G表示格式化

注意:

1.出現Slave_IO_Running:Connecting或Yes和Slave_SQL_Running:Yes 說明主從複製設定成功

2.如果在搭建過程出現錯誤,可以檢視錯誤日誌檔案 cat /var/log/mysqld.log

3.如果出現Slave I/O:Fatal error:The slave I/O …..these UUIDs must be different for …Error_code:1593錯誤,請執行如下命令,rm –rf /var/lib/mysql/auto.cnf刪除這個檔案,之所以會出現這種問題,是因為我的從庫主機是克隆的主庫的主機,所以auto.cnf檔案中儲存的UUID會出現重複。刪除後,重啟動mysqld服務會自動生成一個新的auto.cnf

9、通過客戶端工具進行測試即可,(如Navicat Premium)