您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關怎么理解MySQL Replication的復制線程,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
MySQL Replication由以下線程組成:
(1).binlog Dump線程
Binlog Dump線程運行在主服務器上,可以通過語句show processlist來查看該線程是否運行,它負責將主服務器上二進制日志文件中的內容發送給從服務器的I/O線程。Binlog Dump線程同時還會給每個將要傳輸的事件加鎖,一旦事件傳輸完畢鎖就會立即釋放。
(2).I/O線程
當從服務器端執行start slave語句后,便會運行一個I/O線程。它將會與主服務器建立一個連接,同時會向主服務器發出更新請求,要求將主服務器上的二進制日志文件中更新過的事件發送給此進程。之后,I/O線程會將傳遞過來的更新復制到本地Relay Log的日志中,通過
語句show slave status來查看I/O線程的狀態,Slave_IO_Running為此線程的狀態參數。
(3).SQL線程
SQL線程負責讀取Relay Log日志中的更新事件,并將這些事件挨個執行,使從服務器上的數據庫得到更新,同樣SQL線程也要一個狀態參數Slave_SQL_Running,并與I/O線程提供的狀態參數一起,作為判斷復制進程運行的重要參數。
備注:
主服務器端的Binlog文件是實現復制功能的首要文件,需要注意的是,在啟動數據庫之前,需要先啟用二進制日志功能,需要將配置文件my.cnf中的參數log-bin前的注釋去掉,并設置名字,例如:
[mysqld]
log_bin=mysql-bin
從服務器端的Relay Log文件,在運行start slave命令后產生。Relay Log和Binlog具有相同的格式,兩個日志文件都可以通過mysqlbinlog工具來查看,不同之處在于SQL線程會自動刪除Relay Log文件中已經被執行過的事件。
上述就是小編為大家分享的怎么理解MySQL Replication的復制線程了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。