從零開始學習Linux:Day13 mysql 主從同步

從零開始學習Linux:Day13 mysql 主從同步

mysql主從同步,可以實現mysql數據庫備份,基於數據備份,從而實現故障轉移或數據庫讀寫分離。
常見的mysql主從架構一般有:一主一從,一主多從,互爲主從。
下面主要分享:一主一從實現,即:一個主庫,一個從庫。從庫的數據庫環境完全與主庫一致。

主庫:192.168.68.128
從庫:192.168.68.129

做mysql主從,建議主庫、從庫mysql版本要一致,不能出現mysql與mariadb混搭的情況。

這裏測試環境,主庫,從庫都均爲mariadb5.5
從零開始學習Linux:Day13 mysql 主從同步
從零開始學習Linux:Day13 mysql 主從同步

1、主從原理:
從零開始學習Linux:Day13 mysql 主從同步

主庫先授權給從庫,從庫接到授權後,訪問主庫的二進制日誌,拿 到二進制日誌到從庫的中繼日誌,從中繼日誌決定sql動作。

2、配置主庫
由主從原理,
首先,要配置主庫的二進制日誌功能。
配置文件[mysqld]模塊下增加:

server-id=1
log-bin=128-bin

確認二進制日誌功能是否開啓

show master status

從零開始學習Linux:Day13 mysql 主從同步
如上圖可以看到二進制日誌功能已經開啓。
然後,授權給從庫

grant replication slave on *.* to "tongbu"@"192.168.68.129" identified by "123456";

查看master主庫狀態:

flush privileges
show master status 

從零開始學習Linux:Day13 mysql 主從同步
3、配置從庫
修改配置文件,在[mysqld]模塊下增加:

server-id=2

重啓mariadb服務
指定master

MariaDB [(none)]> change master to
    -> master_host="192.168.68.128",
    -> master_user="tongbu",
    -> master_password="123456",
    -> master_log_file="128-bin.000001",
-> master_log_pos=477;

查看從庫slave狀態

slave start
show slave status\G

從零開始學習Linux:Day13 mysql 主從同步

Slave_IO_Running:Yes
Slave_SQL_Running:Yes
表示從庫配置成功。

4、測試
主庫數據庫:
從零開始學習Linux:Day13 mysql 主從同步
從庫:
從零開始學習Linux:Day13 mysql 主從同步

現在在主庫創建一個test002數據庫
從零開始學習Linux:Day13 mysql 主從同步

查看從庫情況,可以看到,從庫數據庫中出現了test002
從零開始學習Linux:Day13 mysql 主從同步

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