mysql高可用最佳实践_mysql高可用方案
1、一主多從
適用場景:數(shù)據(jù)實(shí)時(shí)性要求不高,讀多寫少。
實(shí)現(xiàn)方式:擴(kuò)展slave數(shù)量,將讀壓力分散到多臺(tái)slave機(jī)器上,以此解決數(shù)據(jù)庫端的讀性能瓶頸。
在實(shí)際應(yīng)用場景中,MySQL復(fù)制90%以上都是一個(gè)Master復(fù)制到一個(gè)或者多個(gè)Slave的架構(gòu)模式,主要用于讀壓力比較大的應(yīng)用的數(shù)據(jù)庫端廉價(jià)擴(kuò)展解決方案。因?yàn)橹灰狹aster和Slave的壓力不是太大(尤其是Slave端壓力)的話,異步復(fù)制的延時(shí)一般都很少很 少。尤其是自從Slave端的復(fù)制方式改成兩個(gè)線程處理之后,更是減小了Slave端的延時(shí)問題。而帶來的效益是,對于數(shù)據(jù)實(shí)時(shí)性要求不是特別Critical的應(yīng)用,只需要通過廉價(jià)的pcserver來擴(kuò)展Slave的數(shù)量,將讀壓力分散到多臺(tái)Slave的機(jī)器上面,即可通過分散單臺(tái)數(shù)據(jù)庫服務(wù)器的讀壓力來解決數(shù)據(jù)庫端的讀性能瓶頸,畢竟在大多數(shù)數(shù)據(jù)庫應(yīng)用系統(tǒng)中的讀壓力還是要比寫壓力大很多。這在很大程度上解決了目前很多中小型網(wǎng)站的數(shù)據(jù)庫壓力瓶頸問題,甚至有些大型網(wǎng)站也在使用類似方案解決數(shù)據(jù)庫瓶頸。
但是,當(dāng)slave增加到一定數(shù)量時(shí),slave對master的負(fù)載以及網(wǎng)絡(luò)帶寬都會(huì)成為一個(gè)嚴(yán)重的問題。
2、級聯(lián)復(fù)制架構(gòu) Master-Slaves-Slaves
在有些應(yīng)用場景中,可能讀寫壓力差別比較大,讀壓力特別的大,一個(gè)Master可能需要上10臺(tái)甚至更多的Slave才能夠支撐注讀的壓力。這時(shí)候,Master就會(huì)比較吃力了,因?yàn)閮H僅連上來的SlaveIO線程就比較多了,這樣寫的壓力稍微大一點(diǎn)的時(shí)候,Master端因?yàn)閺?fù)制就會(huì)消耗較多的資源,很容易造成復(fù)制的延時(shí)。
3、Mysql Cluster
可用性高、數(shù)據(jù)一致性好
安裝配置管理繁瑣,適合場景局限
總體不推薦
4、雙主復(fù)制
心跳監(jiān)測和資源接管。在指定的時(shí)間沒有收到對方發(fā)送的報(bào)文,就認(rèn)為對方失效,這時(shí)需啟動(dòng)資源接管模塊來接管運(yùn)行在對方主機(jī)上的資源或服務(wù)。
5、DRBD
DRBD 是途過網(wǎng)絡(luò)來實(shí)現(xiàn)塊設(shè)備的數(shù)據(jù)鏡像同步的一款開源 Cluster 軟件,它自動(dòng)完成網(wǎng)絡(luò)中兩個(gè)不同服務(wù)器上的磁盤同步,相對于 binlog 日志同步,它是更底層的磁盤同步,理論上 DRDB 適合很多文件型系統(tǒng)的高可用。
6、Lvs+Keepalived+雙主復(fù)制
7、MariaDB Galera
參考資料:
1、http://blog.csdn.net/hguisu/article/details/7325124/
2、mycat_1.5.2.pdf
總結(jié)
以上是生活随笔為你收集整理的mysql高可用最佳实践_mysql高可用方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql5.6开发版_mysql-tu
- 下一篇: linux cmake编译源码,linu