MySQL主從配置

MySQL主從介紹:

    MySQL主從又叫做Replication、AB複製。簡單講就是A和B兩臺機器做主從後,在A上寫數據,另外一臺B也會跟着寫數據,兩者數據實時同步的

    MySQL主從是基於binlog的,主上須開啓binlog才能進行主從。

主從過程大致有3個步驟

 1)主將更改操作記錄到binlog裏

 2)從將主的binlog事件(sql語句)同步到從本機上並記錄在relaylog裏

 3)從根據relaylog裏面的sql語句按順序執行

      主上有一個log dump線程,用來和從的I/O線程傳遞binlog

      從上有兩個線程,其中I/O線程用來同步主的binlog並生成relaylog,另外一個SQL線程用來把relaylog裏面的sql語句執行

如圖:

    image.png

準備工作:

    準備兩臺機器,兩臺機器都需要安裝好mysql,並且啓動mysql服務。安裝mysql請查看博主前面的文章!

配置主:

    ①修改配置文件/etc/my.cnf,增加server-id=129和log_bin=centos7-1;修改完成後,重啓mysql服務。

    image.png

    ②創建一個測試的zrlog庫,把測試庫備份出來,在從上需要導入。

    image.png

    ③創建用作同步數據的用戶

    image.png

    ④對做主從配置的數據庫進行上鎖,目的是配置期間停止讀寫操作。

    image.png

    ⑤查看主的狀態,配置同步時修改使用到這裏的File和Position數據。

    image.png

    主上配置完成了,接上來去從上配置。

配置從:

    ①修改配置文件/etc/my.cnf,增加server-id=128(不能和主一樣);修改完成後,重啓mysql服務。

    image.png

    ②把主上的測試庫zrlog,主上使用rsync同步到從上。然後從上進行導入

    image.png

    image.png

    ③然後進入mysql進行配置

    image.png

    ④查看是否配置成功,查看下面的參數。

    image.pngimage.png

    配置成功後,別忘記到主上進行解鎖操作:unlock tables;

測試主從同步:

    ①在主上的mysql修改數據,然後去從上查看是否同步即可。

    image.png

    從上查看:

    image.png

配置失敗情況:

  1. Slave_IO_Running:connecting

    排錯步驟:①網絡問題,使用ping命令和telnet命令測試;如ping ip看看能不能ping通,telnet ip 3306 看看3306端口是否開啓    ②密碼對不對    ③file和pos有沒有對應(在主上show master status;)    ④還要注意防火牆是否關閉了和iptables規則等等。

  2. mysql -urepl -p123456 -h192.168.139.129  遠程連接失敗,查看mysql日誌:

    image.png

    修改配置文件/etc/my.cn,在[mysqld]下加入skip-name-resolve。  然後重啓服務即可!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章