1. 程式人生 > 實用技巧 >資料庫-MySQL主從複製(理論篇)。

資料庫-MySQL主從複製(理論篇)。

1.什麼是主從複製?
  MySQL的主從複製,就是建立一個或多個和主資料庫完全一樣的資料庫環境,這些資料庫被稱為從資料庫,主資料庫一般用來實時的業務資料寫操作(插入、更新、刪除),從資料庫常用的讀取為主。

2.主從複製的優點
  1)從資料庫可以作為備用資料庫進行操作。當主資料庫出現故障之後,從資料庫可以替代主資料庫繼續工作,不影響公司的業務。
  2)方便架構的擴充套件。隨著業務量越來越大,I/O訪問頻率過高,單機已無法滿足,此時主從資料庫架構,可以降低單個伺服器磁碟I/O訪問的頻率,提高單個機器的I/O效能。
  3)讀寫分離,分散伺服器壓力,使資料庫能支撐更大的併發。

3.主從複製的原理
  概述

:資料庫都有個binlog二進位制檔案,記錄了所有事務執行的sql語句。那麼從資料庫把主資料庫的binlog檔案的sql語句複製過來,再執行一次這些sql語句就可以實現主從一致了。
  開局一張圖,內容全靠吹。主從複製原理如下圖:
主從複製原理

  圖例解釋:
  1)主資料庫進行的insert、update、delete操作會被寫入到binlog日誌裡面;
  2)從庫發起連線,連線到主庫,此時主庫建立一個binlog dump thread執行緒,把binlog的內容傳送到從庫;
  3)從庫啟動之後,會建立兩個執行緒:一個I/O執行緒、一個SQL執行緒,I/O執行緒讀取主庫傳過來的binlog內容並寫入到relay log;SQL執行緒從relay log裡面讀取內容,並將更新內容寫入到從庫裡。

4.主從複製出現的問題及解決方案
  問題描述:
  解決方案:
  問題描述:
  解決方案:
  問題描述:
  解決方案:
  問題描述:
  解決方案:
  問題描述:
  解決方案: