最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mysql主從三種復(fù)制模式(異步復(fù)制,半同步復(fù)制,組復(fù)制)

 更新時(shí)間:2022年08月10日 17:08:27   作者:Rickyyan???????  
這篇文章主要介紹了Mysql主從三種復(fù)制模式(異步復(fù)制,半同步復(fù)制,組復(fù)制),MySQL異步復(fù)制是主從復(fù)制過(guò)程中默認(rèn)的復(fù)制模式,下文簡(jiǎn)單介紹,感興趣的朋友可以參考一下

MySQL異步復(fù)制

MySQL異步復(fù)制是主從復(fù)制過(guò)程中默認(rèn)的復(fù)制模式。主從復(fù)制涉及三個(gè)線程,master I/O線程、slave I/O線程、slave sql線程。因?yàn)槭钱惒綇?fù)制,所以master事務(wù)的提交,不需要經(jīng)過(guò)slave的確認(rèn),即master I/O線程提交事務(wù)后,不需要等待slave I/O線程的回復(fù)確認(rèn),master并不保證binlog一定寫入到了relay log中;而slave I/O把binlog寫入relay log后,由slave sql線程異步執(zhí)行應(yīng)用到slave mysql中,slave I/O也不需要slave sql的回復(fù)確認(rèn),并不保證relay log日志完整寫入到了mysql中。

半同步復(fù)制

基于傳統(tǒng)異步存在的缺陷,mysql在5.5版本推出半同步復(fù)制,是對(duì)傳統(tǒng)異步復(fù)制的改進(jìn)。在master事務(wù)commit前,必須確保binlog日志已經(jīng)寫入slave 的relay log日志中,收到slave給master的響應(yīng)后,才能進(jìn)行事務(wù)的commit。但是后半部分的relay log到sql線程仍然屬于異步執(zhí)行。

組復(fù)制

基于傳統(tǒng)異步復(fù)制和半同步復(fù)制的缺陷——數(shù)據(jù)的一致性問(wèn)題無(wú)法保證,MySQL官方在5.7.17版本正式推出組復(fù)制(MySQL Group Replication,簡(jiǎn)稱MGR)。

由若干個(gè)節(jié)點(diǎn)共同組成一個(gè)復(fù)制組,一個(gè)事務(wù)的提交,必須經(jīng)過(guò)組內(nèi)大多數(shù)節(jié)點(diǎn)(N / 2 + 1)決議并通過(guò),才能得以提交。如上圖所示,由3個(gè)節(jié)點(diǎn)組成一個(gè)復(fù)制組,Consensus層為一致性協(xié)議層,在事務(wù)提交過(guò)程中,發(fā)生組間通訊,由2個(gè)節(jié)點(diǎn)決議(certify)通過(guò)這個(gè)事務(wù),事務(wù)才能夠最終得以提交并響應(yīng)。

引入組復(fù)制,主要是為了解決傳統(tǒng)異步復(fù)制和半同步復(fù)制可能產(chǎn)生數(shù)據(jù)不一致的問(wèn)題。組復(fù)制依靠分布式一致性協(xié)議(Paxos協(xié)議的變體),實(shí)現(xiàn)了分布式下數(shù)據(jù)的最終一致性,提供了真正的數(shù)據(jù)高可用方案(是否真正高可用還有待商榷)。其提供的多寫方案,給我們實(shí)現(xiàn)多活方案帶來(lái)了希望。

MGR環(huán)境下,服務(wù)器數(shù)量必須是3臺(tái)以上,并且是單數(shù),實(shí)現(xiàn)2/n+1的算法。

一個(gè)復(fù)制組由若干個(gè)節(jié)點(diǎn)(數(shù)據(jù)庫(kù)實(shí)例)組成,組內(nèi)各個(gè)節(jié)點(diǎn)維護(hù)各自的數(shù)據(jù)副本(Share Nothing),通過(guò)一致性協(xié)議實(shí)現(xiàn)原子消息和全局有序消息,來(lái)實(shí)現(xiàn)組內(nèi)實(shí)例數(shù)據(jù)的一致。

MGR的解決方案現(xiàn)在具備的特性

數(shù)據(jù)一致性保障:確保集群中大部分節(jié)點(diǎn)收到日志

多節(jié)點(diǎn)寫入支持:多寫模式下支持集群中的所有節(jié)點(diǎn)都可以寫入(但是考慮1到高并發(fā)場(chǎng)景下,保證數(shù)據(jù)高度一致性,生產(chǎn)并沒(méi)有選擇多主寫入,使用單主集群)

Fault Tolerance: 確保系統(tǒng)發(fā)生故障(包括腦裂)依然可用,雙寫對(duì)系統(tǒng)無(wú)影響

MGR的解決方案目前的影響

  • 僅支持InnoDB表,并且每張表一定要有一個(gè)主鍵,用于做write set的沖突檢測(cè);
  • 必須打開GTID特性,二進(jìn)制日志格式必須設(shè)置為ROW,用于選主與write set
  • COMMIT可能會(huì)導(dǎo)致失敗,類似于快照事務(wù)隔離級(jí)別的失敗場(chǎng)景
  • 目前一個(gè)MGR集群最多支持9個(gè)節(jié)點(diǎn)
  • 不支持外鍵于save point特性,無(wú)法做全局間的約束檢測(cè)與部分部分回滾
  • 二進(jìn)制日志不支持binlog event checksum

到此這篇關(guān)于Mysql主從三種復(fù)制模式(異步復(fù)制,半同步復(fù)制,組復(fù)制)的文章就介紹到這了,更多相關(guān)Mysql主從復(fù)制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql中如何用varchar字符串按照數(shù)字排序

    mysql中如何用varchar字符串按照數(shù)字排序

    這篇文章主要介紹了mysql中用varchar字符串按照數(shù)字排序方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • MySQL left join操作中on和where放置條件的區(qū)別介紹

    MySQL left join操作中on和where放置條件的區(qū)別介紹

    這篇文章主要給大家介紹了關(guān)于MySQL left join操作中on和where放置條件的區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • 讓你的查詢效率至少提高4倍的MySQL技巧總結(jié)

    讓你的查詢效率至少提高4倍的MySQL技巧總結(jié)

    這篇文章主要給大家總結(jié)介紹了關(guān)于讓你的查詢效率至少提高4倍的MySQL技巧,MySQL數(shù)據(jù)庫(kù)執(zhí)行效率對(duì)程序的執(zhí)行速度有很大的影響,有效的處理優(yōu)化數(shù)據(jù)庫(kù)是非常有用的,需要的朋友可以參考下
    2024-05-05
  • MySQL索引選擇與失效場(chǎng)景全解析

    MySQL索引選擇與失效場(chǎng)景全解析

    在MySQL數(shù)據(jù)庫(kù)中,索引是一種重要的優(yōu)化手段,它能夠顯著提升查詢速度,尤其是在大數(shù)據(jù)量的表中,然而,如果不正確地使用,索引可能會(huì)失去作用,導(dǎo)致查詢性能下降,所以本文給大家介紹了MySQL索引選擇與失效場(chǎng)景全解析,需要的朋友可以參考下
    2025-06-06
  • mysql如何配置secure_file_priv

    mysql如何配置secure_file_priv

    這篇文章主要介紹了mysql如何配置secure_file_priv問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • MySQL Aborted connection告警日志的分析

    MySQL Aborted connection告警日志的分析

    這篇文章主要介紹了MySQL Aborted connection告警日志的分析,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-08-08
  • MYSQL每隔10分鐘進(jìn)行分組統(tǒng)計(jì)的實(shí)現(xiàn)方法

    MYSQL每隔10分鐘進(jìn)行分組統(tǒng)計(jì)的實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了如何利用MYSQL實(shí)現(xiàn)每隔10分鐘進(jìn)行分組統(tǒng)計(jì)的方法,文中給出了詳細(xì)的示例代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友們下面來(lái)一起看看吧。
    2016-12-12
  • 連接mysql連接超時(shí)報(bào)錯(cuò)問(wèn)題以及解決

    連接mysql連接超時(shí)報(bào)錯(cuò)問(wèn)題以及解決

    這篇文章主要介紹了連接mysql連接超時(shí)報(bào)錯(cuò)問(wèn)題以及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • MySQL之union和union all的使用及區(qū)別說(shuō)明

    MySQL之union和union all的使用及區(qū)別說(shuō)明

    這篇文章主要介紹了MySQL之union和union all的使用及區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • mysql導(dǎo)出查詢結(jié)果到csv的實(shí)現(xiàn)方法

    mysql導(dǎo)出查詢結(jié)果到csv的實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇mysql導(dǎo)出查詢結(jié)果到csv的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04

最新評(píng)論

彰武县| 新沂市| 信宜市| 绥德县| 霍山县| 昌乐县| 西充县| 武宣县| 格尔木市| 南陵县| 河间市| 古交市| 静安区| 武汉市| 宁陵县| 鹤壁市| 岳阳县| 阳山县| 称多县| 河西区| 波密县| 新兴县| 九江县| 农安县| 山阴县| 那坡县| 梁平县| 新丰县| 宜都市| 含山县| 馆陶县| 大关县| 东宁县| 息烽县| 东丰县| 武定县| 青浦区| 辉县市| 景洪市| 海门市| 咸宁市|