减少mysql主从数据同步延迟问题的详解
基于局域網(wǎng)的master/slave機(jī)制在通常情況下已經(jīng)可以滿足'實(shí)時(shí)'備份的要求了。如果延遲比較大,就先確認(rèn)以下幾個(gè)因素:?
1. 網(wǎng)絡(luò)延遲
2. master負(fù)載
3. slave負(fù)載
一般的做法是,使用多臺(tái)slave來(lái)分?jǐn)傋x請(qǐng)求,再?gòu)倪@些slave中取一臺(tái)專用的服務(wù)器,只作為備份用,不進(jìn)行其他任何操作,就能相對(duì)最大限度地達(dá)到'實(shí)時(shí)'的要求了
另外,再介紹2個(gè)可以減少延遲的參數(shù)
??–slave-net-timeout=seconds
? 參數(shù)含義:當(dāng)slave從主數(shù)據(jù)庫(kù)讀取log數(shù)據(jù)失敗后,等待多久重新建立連接并獲取數(shù)據(jù)
?slave_net_timeout單位為秒 默認(rèn)設(shè)置為 3600秒?
| slave_net_timeout?????????????? | 3600?
??–master-connect-retry=seconds
參數(shù)含義:當(dāng)重新建立主從連接時(shí),如果連接建立失敗,間隔多久后重試。
?? master-connect-retry單位為秒 默認(rèn)設(shè)置為 60秒
通常配置以上2個(gè)參數(shù)可以減少網(wǎng)絡(luò)問(wèn)題導(dǎo)致的主從數(shù)據(jù)同步延遲
一般網(wǎng)絡(luò)問(wèn)題的錯(cuò)誤是:
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] Slave I/O thread: Failed reading log event, reconnecting to retry, log ‘mysql_master-bin.000134′ position 115817861
總結(jié)
以上是生活随笔為你收集整理的减少mysql主从数据同步延迟问题的详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 使用flush-logs命令重新生成My
- 下一篇: rhel6系统中,mysql 5.6复制