MariaDB 主從複製
MySQL Replication:NySQL複製,MySQL的複製預設為非同步工作模式
mysql的複製功能是mysql內建的,裝上它之後就具備了這個功能,而mysql複製是mysql實現大規模高效能應用的一個基本工具,是 mysql完成水平擴充的基本架構,為了能夠應付更多的訪問請求,通常情況下我們需要對伺服器進行擴充,而擴充通常有兩種方式:向上擴充和向外擴充;
向上擴充:scale on,也稱為垂直擴充,一般是擴充伺服器的記憶體或CPU顆數的這種就是向上擴充。
向外擴充:scale out,也稱為水平擴充,比較一台伺服器不夠,再加一台伺服器,再不夠再加,這種情況就是向外擴充。
其實MySQL的的複製功能就是使用MySQL向外擴充的能力,也就是水平擴充的功能。
所謂同步的複製:首 先主伺服器每更新一條資料先寫到磁碟檔案中,同時還要寫一個到二進位記錄檔中,從伺服器就會到主伺服器請求二進位資訊儲存在中繼日誌中,儲存好後由本地 的SQL thread從中繼日誌應用到從伺服器的本地有磁碟檔案中,當這個過程完成之後再由從伺服器返回確認結果給主伺服器,主伺服器才返回結果給用戶端的。
所謂非同步複製:當主伺服器要寫資料時,先寫到本地的磁碟,同時寫到二進位檔案日誌中,寫好二進位記錄檔後就把結果返回給用戶端,至於從服務有沒有來主伺服器同步二進位日誌他不關心。
注意:在做複製時雙方的的MySQL要一致,如果不一致,主的要低於從的。
MySQL主從服務的工作原理圖:
這裡還要注意,如果從伺服器不斷的到主伺服器來請求資料,發現這些資料已經是最新的資料了,那從伺服器的I/O thread將會轉為睡眠狀態,因為主伺服器會通知,而I/O線程不會做輪循,從伺服器的二進位記錄檔通常是被關閉狀態的,從伺服器是不允許執行寫操作 的。
在 CentOS/RHEL/Scientific Linux 6 下安裝 LAMP (Apache with MariaDB and PHP)
MariaDB Proxy讀寫分離的實現
Linux下編譯安裝配置MariaDB資料庫的方法
CentOS系統使用yum安裝MariaDB資料庫
安裝MariaDB與MySQL並存
Ubuntu 上如何將 MySQL 5.5 資料庫遷移到 MariaDB 10
[翻譯]Ubuntu 14.04 (Trusty) Server 安裝 MariaDB