MySQL數據庫從複製及企業配置實踐

  在實際生產中,數據的重要性不言而喻;數據庫

若是咱們的數據庫只有一臺服務器,那麼很容易產生單點故障的問題,好比這臺服務器訪問壓力過大而沒有響應或者奔潰,那麼服務就不可用了,再好比這臺服務器的硬盤壞了,那麼整個數據庫的數據就所有丟失了,這是重大的安全事故;安全

爲了不服務的不可用以及保障數據的安全可靠性,咱們至少須要部署兩臺或兩臺以上服務器來存儲數據庫數據,也就是咱們須要將數據複製多份部署在多臺不一樣的服務器上,即便有一臺服務器出現故障了,其餘服務器依然能夠繼續提供服務;服務器

MySQL提供了主從複製功能以提升服務的可用性與數據的安全可靠性;架構

主從複製是指服務器分爲主服務器和從服務器,主服務器負責讀和寫,從服務器只負責讀,主從複製也叫 master/slave,master是主,slave是從;3d

主從複製能夠實現對數據庫備份和讀寫分離;日誌

主從複製架構blog

blob.png

MySQL的主從複製將通過以下步驟:事件

一、當 master 主服務器上的數據發生改變時,則將其改變寫入二進制事件日誌文件中;部署

二、salve 從服務器會在必定時間間隔內對 master 主服務器上的二進制日誌進行探測,探測其是否發生過改變,若是探測到 master 主服務器的二進制事件日誌發生了改變,則開始一個 I/O Thread 請求 master 二進制事件日誌;it

三、同時 master 主服務器爲每一個 I/O Thread 啓動一個dump  Thread,用於向其發送二進制事件日誌;

四、slave 從服務器將接收到的二進制事件日誌保存至本身本地的中繼日誌文件中;

五、salve 從服務器將啓動 SQL Thread 從中繼日誌中讀取二進制日誌,在本地重放,使得其數據和主服務器保持一致;

六、最後 I/O Thread 和 SQL Thread 將進入睡眠狀態,等待下一次被喚醒;

MySQL主從複製流程圖

blob.png

相關文章
相關標籤/搜索