天天看點

mysql主從複制:基于windows\linux

兩台伺服器:

1)主伺服器windows系統;ip:192.168.2.1

2)從伺服器centos7系統;ip:192.168.2.2

步驟:

1、主伺服器配置

1)、打開mysql下的my.ini增加下列代碼

       log-bin = mysql-bin  #給sql二進制日志檔案取名

       server-id    = 1         #給伺服器設定ID

2)、檔案儲存成功後重新開機mysql

3)、給從伺服器配置設定一個有權限的賬号名稱

        GRANT replication slave ON *.* TO 'slave'@'%' IDENTIFIED BY '111111'; 

4)、檢視主伺服器的bin日志記錄,進入mysql運作   show master status;後 可看到如下圖

mysql主從複制:基于windows\linux

2、從伺服器配置

1)、打開opt/lampp/etc下的my.cnf增加下列代碼

     server-id    = 2

     replicate-do-db = ×××            #需要複制的資料庫

     replicate-ignore-db =  ×××     #不需要複制的資料庫

2)、儲存檔案并重新開機lampp:/opt/lampp/lampp restart;

3)、進入mysql:/opt/lampp/bin/mysql

4)、關閉slave,執行語句:  stop slave;

5)、配置slave,執行語句:

CHANGE MASTER TO

MASTER_HOST="192.168.2.1",                   #主伺服器IP(若有防火牆,需要内網IP)

MASTER_USER="slave",                              #主伺服器mysql使用者名(是否有權限在從伺服器登入)

MASTER_PASSWORD="hc8866",                #主伺服器mysql密碼

MASTER_LOG_FILE="mysql-bin.000308",   #主伺服器mysql日志名

MASTER_LOG_POS=1075496;                    #主伺服器mysql日志記錄位置

6)、開啟slave,執行語句:start slave;

7)、檢視slave狀态,執行語句:show slave status\G; 顯示如下則配置成功

mysql主從複制:基于windows\linux

8)、若出現Slave_IO_Running:connecting;或Slave_SQL_Running:No;等情況

        (1)、主伺服器設定了防火牆,請使用内網ip位址

        (2)、主伺服器的mysql登入賬号無權限

        (3)、主、從伺服器資料庫不一緻

   針對以上問題可通過show slave status\G;列印出錯誤的問題所在并進行相應的調整。

mysql主從複制:基于windows\linux
mysql主從複制:基于windows\linux

繼續閱讀