MySQL8.0配置主從複製,實現減少讀取數據庫的壓力。

1、主從數據庫的作用

其中Master負責寫操作的負載,也就是說一切寫的操作都在Master上進行,而讀的操作則分攤到Slave上進行。這樣一來的可以大大提高讀取的效率。在一般的互聯網應用中,經過一些數據調查得出結論,讀/寫的比例大概在 10:1左右 ,也就是說大量的數據操作是集中在讀的操作,這也就是爲什麼我們會有多個Slave的原因。但是爲什麼要分離讀和寫呢?熟悉DB的研發人員都知道,寫操作涉及到鎖的問題,不管是行鎖還是表鎖還是塊鎖,都是比較降低系統執行效率的事情。我們這樣的分離是把寫操作集中在一個節點上,而讀操作其其他的N個節點上進行,從另一個方面有效的提高了讀的效率,保證了系統的高可用性。

2、主從配置之前的須知

MySQL主從複製要求版本最好一致,至少前兩個版本號相同,因爲官方推薦這樣,最主要還是怕版本不一致帶來的不兼容問題。
首先注意的是,搭建好一臺虛擬機Centos7的MySQL,以及你本機的MySQL,我這裏是用本機MySQL作爲主,用虛擬機作爲從,此篇教程略過搭建系統和MySQL的過程,直接講配置。

3、主服務器MySQL版本8.0.19

在這裏插入圖片描述

4、從服務器MySQL版本8.0.20

在這裏插入圖片描述

5、修改主服務器MySQL的my.cnf配置文件

主服務器MySQL的具體的三項配置,保存之後記住重啓MySQL。

#skip-networking  
  
  # Replication Master Server (default)  
  # binary logging is required for replication  
  log-bin=mysql-bin  
    
    # binary logging format - mixed recommended  
    binlog_format=mixed  
      
      # required unique id between 1 and 2^32 - 1  
      # defaults to 1 if master-host is not set  
      # but will not function as a master if omitted  
      server-id   = 131  

在這裏插入圖片描述
在這裏插入圖片描述

6、修改從服務器MySQL的my.cnf配置文件

從服務器MySQL的具體的三項配置,保存之後記住重啓MySQL。

log_bin=mysql-bin
binlog_format=mixed
server_id = 104

在這裏插入圖片描述
在這裏插入圖片描述

7、在主庫的MySQL創建用於複製操作的用戶

##創建用戶
CREATE USER 'Slave1'@'192.168.62.131' IDENTIFIED WITH mysql_native_password BY 'Slave_xiaoxuan123';

在這裏插入圖片描述

##給用戶授權
GRANT REPLICATION SLAVE ON *.* TO 'Slave1'@'192.168.62.131';

在這裏插入圖片描述

##刷新權限信息
flush privileges;

在這裏插入圖片描述

8、獲取文件名和位置

SHOW MASTER STATUS;

在這裏插入圖片描述

9、在從(Slave)庫設置參數

mysql> CHANGE MASTER TO MASTER_HOST='192.168.0.104',
MASTER_USER='Slave1',
MASTER_PASSWORD='Slave_xiaoxuan123',
MASTER_LOG_FILE='mysql-bin.000006',
MASTER_LOG_POS=870;

在這裏插入圖片描述

10、查看主從同步狀態

show slave status\G;

在這裏插入圖片描述

11、開啓主從同步

start slave;

12、再次查看

show slave status\G;

在這裏插入圖片描述

13、在主庫創建數據庫進行測試

##創建名爲xiaoxuan的數據庫進行測試
Create database xiaoxuan;

在這裏插入圖片描述
在這裏插入圖片描述

14、去從庫看看會不會產生xiaoxuan的數據庫

在這裏插入圖片描述

15、注意事項

每次主服務器,重新啓動MySQL後,position參數位置需要改變,也就是上面的第9步的最後一位參數需要改變,當然ip地址也是一樣,如果服務器ip地址經常性修改,則也要修改,不過這種情況很少,重啓MySQL的情況比較多。

16、遇到困難可以評論(有信必回)小軒微信17382121839

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