日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
五大常見(jiàn)MySQL數(shù)據(jù)庫(kù)的高可用方案

一、概述

成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、??稻W(wǎng)絡(luò)推廣、小程序制作、保康網(wǎng)絡(luò)營(yíng)銷(xiāo)、??灯髽I(yè)策劃、??灯放乒P(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供??到ㄕ?/a>搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

我們?cè)诳紤]MySQL數(shù)據(jù)庫(kù)的高可用的架構(gòu)時(shí),主要要考慮如下幾方面:

關(guān)于對(duì)高可用的分級(jí)在這里我們不做詳細(xì)的討論,這里只討論常用高可用方案的優(yōu)缺點(diǎn)以及高可用方案的選型。

二、高可用方案

1. 主從或主主半同步復(fù)制

使用雙節(jié)點(diǎn)數(shù)據(jù)庫(kù),搭建單向或者雙向的半同步復(fù)制。在5.7以后的版本中,由于lossless replication、logical多線程復(fù)制等一些列新特性的引入,使得MySQL原生半同步復(fù)制更加可靠。

常見(jiàn)架構(gòu)如下:

通常會(huì)和proxy、keepalived等第三方軟件同時(shí)使用,即可以用來(lái)監(jiān)控?cái)?shù)據(jù)庫(kù)的健康,又可以執(zhí)行一系列管理命令。如果主庫(kù)發(fā)生故障,切換到備庫(kù)后仍然可以繼續(xù)使用數(shù)據(jù)庫(kù)。

優(yōu)點(diǎn):

缺點(diǎn):

2. 半同步復(fù)制優(yōu)化

半同步復(fù)制機(jī)制是可靠的。如果半同步復(fù)制一直是生效的,那么便可以認(rèn)為數(shù)據(jù)是一致的。但是由于網(wǎng)絡(luò)波動(dòng)等一些客觀原因,導(dǎo)致半同步復(fù)制發(fā)生超時(shí)而切換為異步復(fù)制,那么這時(shí)便不能保證數(shù)據(jù)的一致性。所以盡可能的保證半同步復(fù)制,便可提高數(shù)據(jù)的一致性。

該方案同樣使用雙節(jié)點(diǎn)架構(gòu),但是在原有半同復(fù)制的基礎(chǔ)上做了功能上的優(yōu)化,使半同步復(fù)制的機(jī)制變得更加可靠。

可參考的優(yōu)化方案如下:

(1) 雙通道復(fù)制

半同步復(fù)制由于發(fā)生超時(shí)后,復(fù)制斷開(kāi),當(dāng)再次建立起復(fù)制時(shí),同時(shí)建立兩條通道,其中一條半同步復(fù)制通道從當(dāng)前位置開(kāi)始復(fù)制,保證從機(jī)知道當(dāng)前主機(jī)執(zhí)行的進(jìn)度。另外一條異步復(fù)制通道開(kāi)始追補(bǔ)從機(jī)落后的數(shù)據(jù)。當(dāng)異步復(fù)制通道追趕到半同步復(fù)制的起始位置時(shí),恢復(fù)半同步復(fù)制。

(2) binlog文件服務(wù)器

搭建兩條半同步復(fù)制通道,其中連接文件服務(wù)器的半同步通道正常情況下不啟用,當(dāng)主從的半同步復(fù)制發(fā)生網(wǎng)絡(luò)問(wèn)題退化后,啟動(dòng)與文件服務(wù)器的半同步復(fù)制通道。當(dāng)主從半同步復(fù)制恢復(fù)后,關(guān)閉與文件服務(wù)器的半同步復(fù)制通道。

優(yōu)點(diǎn):

缺點(diǎn):

3. 高可用架構(gòu)優(yōu)化

將雙節(jié)點(diǎn)數(shù)據(jù)庫(kù)擴(kuò)展到多節(jié)點(diǎn)數(shù)據(jù)庫(kù),或者多節(jié)點(diǎn)數(shù)據(jù)庫(kù)集群。可以根據(jù)自己的需要選擇一主兩從、一主多從或者多主多從的集群。

由于半同步復(fù)制,存在接收到一個(gè)從機(jī)的成功應(yīng)答即認(rèn)為半同步復(fù)制成功的特性,所以多從半同步復(fù)制的可靠性要優(yōu)于單從半同步復(fù)制的可靠性。并且多節(jié)點(diǎn)同時(shí)宕機(jī)的幾率也要小于單節(jié)點(diǎn)宕機(jī)的幾率,所以多節(jié)點(diǎn)架構(gòu)在一定程度上可以認(rèn)為高可用性是好于雙節(jié)點(diǎn)架構(gòu)。

但是由于數(shù)據(jù)庫(kù)數(shù)量較多,所以需要數(shù)據(jù)庫(kù)管理軟件來(lái)保證數(shù)據(jù)庫(kù)的可維護(hù)性??梢赃x擇MMM、MHA或者各個(gè)版本的proxy等等。常見(jiàn)方案如下:

(1) MHA+多節(jié)點(diǎn)集群

MHA Manager會(huì)定時(shí)探測(cè)集群中的master節(jié)點(diǎn),當(dāng)master出現(xiàn)故障時(shí),它可以自動(dòng)將***數(shù)據(jù)的slave提升為新的master,然后將所有其他的slave重新指向新的master,整個(gè)故障轉(zhuǎn)移過(guò)程對(duì)應(yīng)用程序完全透明。

MHA Node運(yùn)行在每臺(tái)MySQL服務(wù)器上,主要作用是切換時(shí)處理二進(jìn)制日志,確保切換盡量少丟數(shù)據(jù)。

MHA也可以擴(kuò)展到如下的多節(jié)點(diǎn)集群:

優(yōu)點(diǎn):

缺點(diǎn):

(2) zookeeper+proxy

Zookeeper使用分布式算法保證集群數(shù)據(jù)的一致性,使用zookeeper可以有效的保證proxy的高可用性,可以較好的避免網(wǎng)絡(luò)分區(qū)現(xiàn)象的產(chǎn)生。

優(yōu)點(diǎn):

缺點(diǎn):

4. 共享存儲(chǔ)

共享存儲(chǔ)實(shí)現(xiàn)了數(shù)據(jù)庫(kù)服務(wù)器和存儲(chǔ)設(shè)備的解耦,不同數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步不再依賴于MySQL的原生復(fù)制功能,而是通過(guò)磁盤(pán)數(shù)據(jù)同步的手段,來(lái)保證數(shù)據(jù)的一致性。

(1) SAN共享儲(chǔ)存

SAN的概念是允許存儲(chǔ)設(shè)備和處理器(服務(wù)器)之間建立直接的高速網(wǎng)絡(luò)(與LAN相比)連接,通過(guò)這種連接實(shí)現(xiàn)數(shù)據(jù)的集中式存儲(chǔ)。常用架構(gòu)如下:

使用共享存儲(chǔ)時(shí),MySQL服務(wù)器能夠正常掛載文件系統(tǒng)并操作,如果主庫(kù)發(fā)生宕機(jī),備庫(kù)可以掛載相同的文件系統(tǒng),保證主庫(kù)和備庫(kù)使用相同的數(shù)據(jù)。

優(yōu)點(diǎn):

缺點(diǎn):

(2) DRBD磁盤(pán)復(fù)制

DRBD是一種基于軟件、基于網(wǎng)絡(luò)的塊復(fù)制存儲(chǔ)解決方案,主要用于對(duì)服務(wù)器之間的磁盤(pán)、分區(qū)、邏輯卷等進(jìn)行數(shù)據(jù)鏡像,當(dāng)用戶將數(shù)據(jù)寫(xiě)入本地磁盤(pán)時(shí),還會(huì)將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)中另一臺(tái)主機(jī)的磁盤(pán)上,這樣的本地主機(jī)(主節(jié)點(diǎn))與遠(yuǎn)程主機(jī)(備節(jié)點(diǎn))的數(shù)據(jù)就可以保證實(shí)時(shí)同步。常用架構(gòu)如下:

當(dāng)本地主機(jī)出現(xiàn)問(wèn)題,遠(yuǎn)程主機(jī)上還保留著一份相同的數(shù)據(jù),可以繼續(xù)使用,保證了數(shù)據(jù)的安全。

DRBD是linux內(nèi)核模塊實(shí)現(xiàn)的快級(jí)別的同步復(fù)制技術(shù),可以與SAN達(dá)到相同的共享存儲(chǔ)效果。

優(yōu)點(diǎn):

缺點(diǎn):

5. 分布式協(xié)議

分布式協(xié)議可以很好解決數(shù)據(jù)一致性問(wèn)題。比較常見(jiàn)的方案如下:

(1) MySQL cluster

MySQL cluster是官方集群的部署方案,通過(guò)使用NDB存儲(chǔ)引擎實(shí)時(shí)備份冗余數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)庫(kù)的高可用性和數(shù)據(jù)一致性。

優(yōu)點(diǎn):

缺點(diǎn):

(2) Galera

基于Galera的MySQL高可用集群, 是多主數(shù)據(jù)同步的MySQL集群解決方案,使用簡(jiǎn)單,沒(méi)有單點(diǎn)故障,可用性高。常見(jiàn)架構(gòu)如下:

優(yōu)點(diǎn):

缺點(diǎn):

(3) POAXS

Paxos 算法解決的問(wèn)題是一個(gè)分布式系統(tǒng)如何就某個(gè)值(決議)達(dá)成一致。這個(gè)算法被認(rèn)為是同類(lèi)算法中最有效的。Paxos與MySQL相結(jié)合可以實(shí)現(xiàn)在分布式的MySQL數(shù)據(jù)的強(qiáng)一致性。常見(jiàn)架構(gòu)如下:

優(yōu)點(diǎn):

缺點(diǎn):

三、總結(jié)

隨著人們對(duì)數(shù)據(jù)一致性的要求不斷的提高,越來(lái)越多的方法被嘗試用來(lái)解決分布式數(shù)據(jù)一致性的問(wèn)題,如MySQL自身的優(yōu)化、MySQL集群架構(gòu)的優(yōu)化、Paxos、Raft、2PC算法的引入等等。

而使用分布式算法用來(lái)解決MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)一致性的問(wèn)題的方法,也越來(lái)越被人們所接受,一系列成熟的產(chǎn)品如PhxSQL、MariaDB Galera Cluster、Percona XtraDB Cluster等越來(lái)越多的被大規(guī)模使用。

隨著官方MySQL Group Replication的GA,使用分布式協(xié)議來(lái)解決數(shù)據(jù)一致性問(wèn)題已經(jīng)成為了主流的方向。期望越來(lái)越多優(yōu)秀的解決方案被提出,MySQL高可用問(wèn)題可以被更好的解決。

【本文是專欄機(jī)構(gòu)作者“大U的技術(shù)課堂”的原創(chuàng)文章,轉(zhuǎn)載請(qǐng)通過(guò)微信公眾號(hào)(ucloud2012)聯(lián)系作者】

 戳這里,看該作者更多好文


本文名稱:五大常見(jiàn)MySQL數(shù)據(jù)庫(kù)的高可用方案
標(biāo)題網(wǎng)址:
http://www.5511xx.com/article/cojcpeo.html