1. 程式人生 > >mysql 主從實戰及讀寫分離

mysql 主從實戰及讀寫分離

logs 啟動 毫秒 class -- systemctl position 讀寫 mas

1. MYSQL主從原理 

  1) 至少需要2臺數據庫服務器,一主一從,Master開啟bin-log功能用於記錄主庫增加、刪除、修改、更新SQL語句。

  2) 異步復制過程,有延遲,毫秒級別,開啟三個線程。分別是Master開啟IO線程,SLAVE開啟IO線程、SQL線程。

  3) 叢庫啟動salve start,通過IO線程、用戶名和密碼去連接MASTERMASTER IO線程負責將bin-log內容、Position位置點數據發給SLAVE

  4) SLAVE IO線程收到數據之後,會將內容追加到本地relay-log中繼日誌,同時會生產master.info

文件(這次從哪臺機器同步,用戶名、密碼、bin-log文件名、position位置)。

  5) SLAVE SQL線程實時監測relay-log內容有更新,解析文件中的SQL語句,在本地去執行。

2.mysql主從構建

1.在主服務器的mysql配置文件(/etc/my.cnf)中添加log-bin=mysql-bin,server-id=1,修改了配置文件得重啟mysql -----systemctl restart mysqld

  2.添加授權同步用戶名和密碼

    grant replication slave on *.* to [email protected]

/* */%‘ identified by ‘123456‘;

3.查看position點用於從庫指定 ------------>show master status;

    技術分享

4.在從庫中添加server-id =2;修改了配置文件得重啟mysql -----systemctl restart mysqld

  5.在同步上執行如下代碼綁定主庫。

  

mysql 主從實戰及讀寫分離