mysql進階(二)mysql復制架構(gòu)-創(chuàng)新互聯(lián)

mysql復制的優(yōu)點:     1、數(shù)據(jù)分布     2、數(shù)據(jù)備份     3、負載均衡     4、提示高可用性

mysql/slave

創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務公司,擁有項目成都網(wǎng)站制作、做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元樊城做網(wǎng)站,已為上家服務,為樊城各地企業(yè)和個人服務,聯(lián)系電話:028-86922220

mysql進階(二)mysql復制架構(gòu)

master/slave較為簡單,master負責響應客戶端的寫請求,slave負責響應客戶端的讀請求

實現(xiàn)原理:

    slave在啟動兩個線程,i/o線程和sql線程,master啟動dump線程,每當master的數(shù)據(jù)發(fā)生改變時,master就會將對應的SQL語句存儲在二進制日志文件中,slave的通過i/o線程連接master的dump線程并每個一段時間就會向master詢問二進制文件是否發(fā)生改變,如果二進制文件發(fā)生改變slave的i/o線程就會去讀取二進制文件中發(fā)生改變的內(nèi)容存儲在本地的中繼日志中并通過sql線程對中繼日志的內(nèi)容進行回放,并記錄本次讀取到的二進制文件位置,完成復制。

    

存在問題:

    1、master壓力過大

    2、master宕機之后將無法完成用戶寫請求

    3、節(jié)點數(shù)據(jù)可能不一致

    4、默認使用異步復制方式

    5、延遲

     延遲的原因:

            1、 slave節(jié)點過多,master會為每個slave打開一個dump線程

            2、 并發(fā)寫請求操作,由于mysql支持并發(fā)請求,如果多個寫請求同時到達,將會將這些寫操作都記錄在二進制日志中,但在寫入二進制文件時只能通過串行寫入

            3、 slave通過i/o線程讀取二進制文件并寫入中繼日志是也只能通過串行寫入

master/master

    mysql進階(二)mysql復制架構(gòu)

master/master的出現(xiàn)正好解決了master/slave中如果master宕機之后用戶的寫請求無法完成的問題,但同時引入了比master/slave更多的問題,實現(xiàn)原理基本和master/slave相同,只需要在兩臺master中分別啟動二進制日志和中繼日志即可

注意問題:

    1、 避免主鍵重復

    2、 server-id全局唯一

存在問題:

    1、 經(jīng)常出現(xiàn)兩臺master數(shù)據(jù)不一致(存在巨大風險)

    2、 主鍵沖突

    3、 延遲

級聯(lián)復制

mysql進階(二)mysql復制架構(gòu)

    在有些應用場景中,可能讀寫壓力差別比較大,讀壓力特別的大,一個Master可能需要上10臺甚至更多的Slave才能夠支撐注讀的壓力。這時候,Master就會比較吃力了,因為僅僅連上來的SlaveIO線程就比較多了,這樣寫的壓力稍微大一點的時候,Master端因為復制就會消耗較多的資源,很容易造成復制的延時。這時候我們就可以利用MySQL可以在Slave端記錄復制所產(chǎn)生變更的BinaryLog信息的功能,也就是打開log_slave_update選項。然后,通過二級(或者是更多級別)復制來減少Master端因為復制所帶來的壓力。

    這種多層級聯(lián)復制的架構(gòu),很容易就解決了Master端因為附屬Slave太多而成為瓶頸的風險。

但下面階級過多同一個變更傳到最底層的Slave所需要經(jīng)過的MySQL也會更多,同樣可能造成延時較長的風險

存在問題:

    1、可能導致延遲更為嚴重

    2、借助于BlackHole存儲引擎(黑洞引擎)

半同步復制

     mysql復制方式:

        異步:將二進制日志發(fā)送給slave不等待slave回應直接返回給客戶端,數(shù)據(jù)儲存成功

    同步:將二進制日志發(fā)送給slave等待所有slave回應執(zhí)行成功后返回給客戶端,數(shù)據(jù)儲存成功

    半同步:將二進制日志發(fā)送給slave等待一個slave回應執(zhí)行成功后返回給客戶端,數(shù)據(jù)儲存成功

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

本文名稱:mysql進階(二)mysql復制架構(gòu)-創(chuàng)新互聯(lián)
分享鏈接:http://muchs.cn/article46/cdcpeg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作標簽優(yōu)化、品牌網(wǎng)站建設靜態(tài)網(wǎng)站、軟件開發(fā)、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營