1. 程式人生 > >MySQL8.0主從複製

MySQL8.0主從複製

環境介紹:

主:使用VMware虛擬Linux系統(CentOS7),並安裝mysql8.0

從:使用windows並安裝mysql8.0

雖然兩個資料庫的環境並不一樣,但是不會影響我們的MySQL主從複製。

步驟簡述:

     2.在MySQL中建立用於主從複製的使用者並授權

     3.在Windows中安裝MySQL

     4.配置主庫

     5.配置從庫

主要介紹一下第4和第5步:

      注意:MySQL 5.1.7版本之後,已經不支援把master配置屬性寫入my.cnf配置檔案中了,只需要把同步的資料庫和要忽略的資料庫寫入即可。

主伺服器配置

在mysqld下增加如下引數 [mysqld] #設定伺服器id,為1表示主伺服器,例項唯一ID,不能和canal的slaveId重複 server_id=1 #啟動MySQ二進位制日誌系統 log-bin=mysql-bin #選擇row模式  binlog-format=ROW #需要同步的資料庫名,如果有多個數據庫,可重複此引數,每個資料庫一行 binlog-do-db=DB1 #不同步mysql系統資料庫 binlog-ignore-db=mysql  

從資料庫配置 由於使用的是Windows 中的MySQL 所以在my.ini配置檔案 [mysqld]中配置如下 #例項唯一ID,不能和canal的slaveId重複,表示為從資料庫 server-id=2 #啟動MySQL二進位制日誌系統 log-bin=mysql-bin  #選擇row模式 binlog-format=ROW #需要同步的資料庫名,如果有多個數據庫,可重複此引數,每個資料庫一行  replicate-do-db=test_master #不同步mysql系統資料庫 replicate-ignore-db=mysql

配置好後重啟兩個資料庫!

下面我們看下配置是否正確

在主資料庫中執行  show master status;

在從資料庫中執行下面指令

mysql> CHANGE MASTER TO     -> MASTER_HOST='伺服器主機地址',     -> MASTER_USER='使用者名稱',     -> MASTER_PASSWORD='密碼!',     -> MASTER_LOG_FILE='binlog.000001',     -> MASTER_LOG_POS=1807; Query OK, 0 rows affected, 1 warning (0.07 sec)

(2.)開始同步 mysql> START SLAVE; (3.)檢視Slave的執行狀態 mysql> SHOW SLAVE STATUS\G

接下來就可以自己測試一下了,由於我使用的是Navicat 連結進行的測試所以就不在這裡展示了。