mysql主从进行扩展_Mysql主从知识扩展部分1
一、使用mysql-proxy 快速實(shí)現(xiàn)mysql 集群 讀寫(xiě)分離
1、有兩種方法:
a)程序代碼內(nèi)部實(shí)現(xiàn),對(duì)select操作分發(fā)到從庫(kù),其他到主庫(kù),再生產(chǎn)環(huán)境中應(yīng)用比較廣泛,比較知名的有DISCUZX2,優(yōu)點(diǎn)性能好,成本低,缺點(diǎn)是需要開(kāi)發(fā)人員維護(hù)。
b)代理實(shí)現(xiàn),用中間件mysql-proxy來(lái)實(shí)現(xiàn)讀寫(xiě)分離。mysql-proxy是Mysql官方開(kāi)源產(chǎn)品。缺點(diǎn)是有單點(diǎn)故障:為了避免mysql-proxy單點(diǎn)隱患有兩種方法,一種方法是mysql-proxy配合keepalived做雙機(jī),另一種方法是將mysql-proxy和應(yīng)用服務(wù)安裝到同一臺(tái)服務(wù)器上;為了避免mysql-master單點(diǎn)故障可以使用DRBD+heartbear做雙機(jī);避免mysql-slave單點(diǎn)故障增加多臺(tái)mysql-slave即可,因?yàn)閙ysql-proxy會(huì)自動(dòng)屏蔽后端發(fā)生故障的mysql-slave。
2、環(huán)境搭建;
1、需要最少3臺(tái)服務(wù)器,主從各一臺(tái),mysql-proxy一臺(tái),
2、在mysql-proxy服務(wù)器上安裝所需的包并進(jìn)行配置。
3、需注意要在主從機(jī)器/etc/my.cnf中開(kāi)啟log=query.log功能。
4、具體操作可參考:https://my.oschina.net/barter/blog/93354
二、mycat實(shí)現(xiàn)MySQL讀寫(xiě)分離
1、Mycat是數(shù)據(jù)庫(kù)中間件,對(duì)數(shù)據(jù)進(jìn)行交互和處理,可對(duì)數(shù)據(jù)進(jìn)行分片處理,所有分片數(shù)據(jù)庫(kù)構(gòu)成一個(gè)完整的數(shù)據(jù)存儲(chǔ)庫(kù),借助mycat的分表能力,能有效提高數(shù)據(jù)處理能力和效率。
2、主要應(yīng)用場(chǎng)景:
a)單純的讀寫(xiě)分離,此時(shí)配置最為簡(jiǎn)單,支持讀寫(xiě)分離,主從切換;
b)分表分庫(kù),對(duì)表進(jìn)行分庫(kù);
c)多租戶(hù)應(yīng)用,每個(gè)應(yīng)用一個(gè)庫(kù),但應(yīng)用程序只連接Mycat,從而不改造程序本身,實(shí)現(xiàn)多租戶(hù)化;
d)表系統(tǒng),借助于Mycat的分表能力,處理大規(guī)模報(bào)表的統(tǒng)計(jì);
3、環(huán)境搭建與配置:
a)安裝mycat,需要安裝JDK
b)配置schema.xml,該表主要用來(lái)配置數(shù)據(jù)庫(kù)節(jié)點(diǎn),邏輯表等等東西的
c)需要設(shè)置防火墻,設(shè)置端口。
4、具體操作可參考:http://www.th7.cn/db/mysql/201708/250280.shtml ? ?https://blog.csdn.net/u011325787/article/details/51423424
三、atlas相關(guān)
1、atlas是Qihoo 360的相關(guān)團(tuán)隊(duì)在Mysql官方的 MySQL-Proxy 0.8.2版本的基礎(chǔ)上修改的一個(gè)中間件。優(yōu)化了鎖機(jī)制,提高了性能。
2、主要功能有:
a)實(shí)現(xiàn)主從的讀寫(xiě)分離
b)從庫(kù)負(fù)載均衡
c)可以設(shè)置對(duì)IP過(guò)濾
d)自動(dòng)識(shí)別SQL語(yǔ)句黑白名單
e)自動(dòng)分表
3、安裝與配置:可參考一下鏈接,Atlas官網(wǎng)配置的注釋寫(xiě)的蠻詳細(xì)的,都是中文。
https://www.cnblogs.com/alex-note/p/6835965.html
https://github.com/Qihoo360/Atlas/wiki/Atlas%E7%9A%84%E5%AE%89%E8%A3%85
https://www.oschina.net/p/atlas
總結(jié)
以上是生活随笔為你收集整理的mysql主从进行扩展_Mysql主从知识扩展部分1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: debian执行php网页,如何在Deb
- 下一篇: CMake find_package