Mysql主從同步的實現原理

2022-09-28 05:45:10 字數 1074 閱讀 6441

1、什麼是mysql主從同步?

當master(主)庫的資料發生變化的時候,變化會實時的同步到sl**e(從)庫。

2、主從同步有什麼好處?

3、主從同步的原理是什麼?

首先我們來了解master-sl**e的體系結構。

如下圖:

不管是delete、update、insert,還是建立函式、儲存過程,所有的操作都在master上。當master有操作的時候,sl**e會快速的接收到這些操作,從而做同步。

但程式設計客棧是,這個機制是怎麼實現的呢?

在master機器上,主從同步事件會被寫到特殊的log檔案中(binary-log);在sl**e機器上,sl**e讀取主從同步事件,並根據讀取的事件變化,在sl**e庫上做相應的更改。

如此,就實現了主從同步了!

下面我們來詳細的了解。

3.1主從同步事件有哪些

上面說到:

在master機器上,主從同步事件會被寫到特殊的log檔案中(binary-log);

主從同步事件有3種形式:statement、row、mixed。

3.2在master機器上的操作

當mastewww.cppcns.comr上的資料發生改變的時候,該事件(insert、update、delete)變化會按照順序寫入到binlog中。

binlog dump執行緒

當sl**e連線到master的時候,master機器會為sl**e開啟binlog dump執行緒。當master 的 binlog發生變化的時候,binlog dump執行緒會通知sl**e,並將相應的binlog內容傳送給sl**e。

3.3在sl**e機器上的操作

當主從同步開啟的時候,sl**e上會建立2個執行緒。

3.4如何在master、sl**e上檢視上述的執行緒?

使用show processlist命令可以檢視。

如圖,在master機器上檢視binlog dump執行緒。

如圖,在sl**e機器上檢視i/o、sql執行緒。

4、講了程式設計客棧這麼多,一圖以蔽之

5、關於實戰

本文標題: mysql主從同步的實現原理

本文位址:

mysql主從同步原理

主從同步 實際上,你讀的主庫和從庫都可以,但是寫的肯定是進入到主庫里,然後從庫在讀binlog,從庫同步 binlog檔案是以二進位制形式儲存的 主庫執行 sql 寫binglog 同步到從庫執行 什麼叫同步,就是insert 或者update或者delete 都會操作主庫,每執行一條語句,都會寫入...

mysql主從同步原理

mysql主從同步原理 mysql主從同步原理 1.主從同步機制 1.1 主從同步介紹和優點 在多台資料伺服器中,分為 主伺服器和從伺服器 一台主伺服器對應多台從伺服器。主伺服器只負責寫入資料 從伺服器只負責同步主伺服器的資料,並讓外部程式讀取資料。主伺服器寫入資料後,即刻將寫入資料的命令傳送給從伺...

mysql主從同步原理

1.master伺服器將資料的改變都記錄到二進位制binlog日誌中 2.salve伺服器會在一定時間間隔內對master二進位制日誌進行探測其是否發生改變,如果發生改變,則開始乙個i o thread請求master二進位制事件 3.同時主節點為每個i o執行緒啟動乙個dump執行緒,用於向其傳送...