您好,登錄后才能下訂單哦!
這篇文章主要講解了Windows下怎么配置MySQL主從復制,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
MySQL主從復制允許將來自一個數據庫(主數據庫)的數據復制到一個或多個數據庫(從數據庫)。
主數據庫一般是實時的業務數據寫入和更新操作,從數據庫常用的讀取為主。
主從復制過程:
1、主服務器上面的任何修改都會通過自己的 I/O tread(I/O 線程)保存在二進制日志 Binary log 里面。
2、從服務器上面也啟動一個 I/O thread,通過配置好的用戶名和密碼, 連接到主服務器上面請求讀取二進制日志,然后把讀取到的二進制日志寫到本地的一個Realy log(中繼日志)里面。
3、從服務器上面同時開啟一個 SQL thread 定時檢查 Realy log(這個文件也是二進制的),如果發現有更新立即把更新的內容在本機的數據庫上面執行一遍。
環境如下:
主數據庫:MySQL版本5.7,IP為192.168.1.11
從數據庫:MySQL版本5.7,IP為192.168.1.12
一、主數據庫配置
1、創建一個新的測試數據庫,名稱為testdb。
2、打開my.ini,增加配置
# 主從復制 server-id=1 #設置server-id log-bin=mysql-bin #開啟二進制文件 #同步的數據庫,除此之外別的不同步(和下面binlog-ignore-db二選一) binlog_do_db=testdb #不同步數據庫,除此之外都同步 #binlog-ignore-db = information_schema #binlog-ignore-db = MySQL
3、重啟MySQL服務
4、創建用于同步的用戶賬號
(1)以管理員身份打開cmd窗口后,運行mysql -uroot -p,輸入密碼(為空則直接回車),登陸。
(2)先后執行下面3條命令創立用戶(用戶名MySlave,密碼123456),并刷新權限
CREATE USER 'MySlave'@'192.168.1.12' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'MySlave'@'192.168.1.12';
FLUSH PRIVILEGES;
5、查看Master狀態,記錄二進制文件名和位置
show master status;
二進制文件為mysql-bin.000005,位置為154
二、從數據庫配置
1、創建一個新的測試數據庫,名稱為testdb。
2、驗證同步賬號能否登陸
打開Navicat for MySQL,新建鏈接,IP填寫192.168.1.11,用戶名MySlave,密碼123456,點擊“連接測試”驗證是否能連接。
3、打開my.ini,增加配置
server-id=2 #設置server-id
log-bin=mysql-bin #開啟二進制文件
4、重啟MySQL服務
5、cmd命令行登陸MySQL數據庫,執行下面命令進行手動同步
mysql > CHANGE MASTER TO MASTER_HOST='192.168.1.11',MASTER_PORT=3306,MASTER_USER='MySlave',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000005',MASTER_LOG_POS=154;
6、啟動salve同步進程
mysql > start slave;
7、查看slave狀態
執行命令:show slave status\G;
Slave_IO_Running: Yes,Slave_SQL_Running: Yes時說明兩個線程已啟動,主從復制配置成功。
8、測試
在主數據庫新建一個表,刷新從數據庫,可以看到這個表。
備注:
在進行數據庫主從復制前,主數據庫中已有表和數據,則這部分數據不會同步,需要手動導出,并在從數據庫中導入。
看完上述內容,是不是對Windows下怎么配置MySQL主從復制有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。