基於區域網的master/sl**e機制在通常情況下已經可以滿足'實時'備份的要求了。如果延遲比較大,就先確認以下幾個因素:
1. 網路延遲
2. master負載
3. sl**e負載
一般的做程式設計客棧法是,使用多台sl**e來分攤讀請求,再從這些sl**e中取一台專用的伺服器,只作為備份用,不進行其他任何操作,就能相對最大限度地達到'實時'的要求了
另外,再介紹2個可以減少延遲的引數
–sl**e-net-timeout=seconds
引數含義:當sl**e從主資料庫讀取log資料失敗後,等待多久重新建立連線並獲取資料
sl**e_net_timeout單位為秒 預設設定為 3600秒
| sl**e_net_timeout | 3600
–master-connect-redbaljmnebhtry=sec程式設計客棧onds
引數含義:當重新建立主從連線時,如果連線建立失敗,間隔多久後重試。
master-connect-retry單位為秒 預設設定為 60秒
通常配置以上2個引數可以減少網路問題導致的主從資料同步延遲dbaljmnebh
一般網路問題的錯誤是:
070401 16:16:55 [error] error reading packet from server: lost connection to mysql server during query (server_errno=2013)
070401 16:16:55 [error] sl**e i/o thread: failed reading log event, r程式設計客棧econnecting to retry, log 『mysql_master-bin.000134′ position 115817861
本文標題: 減少mysql主從資料同步延遲問題的詳解
本文位址:
mysql主從同步延遲問題
mysql配置讀寫分離後,master負責所有的寫操作,而從伺服器負責一切的讀操作。其實在資料庫中使用的最多的操作就是讀操作,一般而言,資料庫會有較大可能成為整個系統的瓶頸。導致資料庫主從同步延遲較大的問題一般有以下幾種。1 從伺服器配置較低,只需要公升級從伺服器的配置即可 2 主庫的qps過高導致...
100 解決Mysql主從同步延遲問題
強制讀主過於粗暴,畢竟只有少量寫請求,很短時間,可能讀取到髒資料。有沒有可能實現,只有這一段時間,可能讀到從庫髒資料的讀請求讀主,平時讀從呢?可以利用乙個快取記錄必須讀主的資料。如上圖,當寫請求發生時 1 寫主庫 2 將哪個庫,哪個表,哪個主鍵三個資訊拼裝乙個key設定到cache裡,這條記錄的超時...
mysql 主從同步延遲原因以及解決方式
常見原因以及解決方案 1 表無主鍵或者二級索引 原因 若binlog 為row格式且表無主鍵或者二級索引,當對大表進行dml操作 update insert delete 從庫在對binlog日誌應用時會根據主鍵或者二級索引檢索需要更改的行,如對應的表無主鍵索引或者二級索引,就會產生大量的全表掃瞄降...