更新時間:2019-02-13 10:38 來源:動力節點 瀏覽9919次
在實際生產中,數據的重要性不言而喻;
如果我們的數據庫只有一臺服務器,那么很容易產生單點故障的問題,比如這臺服務器訪問壓力過大而沒有響應或者奔潰,那么服務就不可用了,再比如這臺服務器的硬盤壞了,那么整個數據庫的數據就全部丟失了,這是重大的安全事故;
為了避免服務的不可用以及保障數據的安全可靠性,我們至少需要部署兩臺或兩臺以上服務器來存儲數據庫數據,也就是我們需要將數據復制多份部署在多臺不同的服務器上,即使有一臺服務器出現故障了,其他服務器依然可以繼續提供服務;
MySQL提供了主從復制功能以提高服務的可用性與數據的安全可靠性;
主從復制是指服務器分為主服務器和從服務器,主服務器負責讀和寫,從服務器只負責讀,主從復制也叫 master/slave,master是主,slave是從;
主從復制可以實現對數據庫備份和讀寫分離;
主從復制架構
MySQL的主從復制將經過如下步驟:
1、當 master 主服務器上的數據發生改變時,則將其改變寫入二進制事件日志文件中;
2、salve 從服務器會在一定時間間隔內對 master 主服務器上的二進制日志進行探測,探測其是否發生過改變,如果探測到 master 主服務器的二進制事件日志發生了改變,則開始一個 I/O Thread 請求 master 二進制事件日志;
3、同時 master 主服務器為每個 I/O Thread 啟動一個dump Thread,用于向其發送二進制事件日志;
4、slave 從服務器將接收到的二進制事件日志保存至自己本地的中繼日志文件中;
5、salve 從服務器將啟動 SQL Thread 從中繼日志中讀取二進制日志,在本地重放,使得其數據和主服務器保持一致;
6、最后 I/O Thread 和 SQL Thread 將進入睡眠狀態,等待下一次被喚醒;
MySQL主從復制流程圖
高薪課程推薦:MySQL主從復制實踐; 最實用的MySQL教程。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習