婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 簡單談談MySQL的半同步復制

簡單談談MySQL的半同步復制

熱門標簽:邯鄲400電話注冊辦理 趙縣地圖標注 哈爾濱云外呼系統運營商 電銷機器人市場價 遂寧400電話申請 dq8 全地圖標注 地圖標注直通車 永州智能外呼系統 南寧智能電銷機器人價格

簡介

MySQL通過復制(Replication)實現存儲系統的高可用。目前,MySQL支持的復制方式有:

  1. 異步復制(Asynchronous Replication):原理最簡單,性能最好。但是主備之間數據不一致的概率很大。
  2. 半同步復制(Semi-synchronous Replication):相比異步復制,半同步復制犧牲了一定的性能,提升了主備之間數據的一致性(有一些情況還是會出現主備數據不一致)。
  3. 組復制(Group Replication):基于Paxos算法實現分布式數據復制的強一致性。只要大多數機器存活就能保證系統可用。相比半同步復制,Group Replication的數據一致性和系統可用性更高。

本文主要討論MySQL半同步復制。

半同步復制的基本流程

MySQL半同步復制的實現是建立在MySQL異步復制的基礎上的。MySQL支持兩種略有不同的半同步復制:AFTER_SYNC和AFTER_COMMIT(受rpl_semi_sync_master_wait_wait_point控制)。

開啟半同步復制時,Master在返回之前會等待Slave的響應或超時。當Slave超時時,半同步復制退化成異步復制。這也是MySQL半同步復制存在的一個問題。本文不討論Salve超時的情形(不討論異步復制)。

半同步復制AFTER_SYNC模式的基本流程

AFTER_SYNC模式是MySQL 5.7才支持的半同步復制方式,也是MySQL5.7默認的半同步復制方式:

  • Prepare the transaction in the storage engine(s).
  • Write the transaction to the binlog, flush the binlog to disk.
  • Wait for at least one slave to acknowledge the reception for the binlog events for the transaction.
  • Commit the transaction to the storage engine(s).

半同步復制AFTER_COMMIT模式的基本流程

MySQL 5.5和5.6的半同步復制只支持AFTER_COMMIT:

  • Prepare the transaction in the storage engine(s).
  • Write the transaction to the binlog, flush the binlog to disk.
  • Commit the transaction to the storage engine(s).
  • Wait for at least one slave to acknowledge the reception for the binlog events for the transaction.

AFTER_SYNC和AFTER_COMMIT兩種方式的小結

AFTER_SYNC: 日志復制到Slave之后,Master再commit。
所有在master上commit的事務都已經復制到slave。
所有已經復制到slave的事務在master不一定commit了(比如,master將日志復制到slave之后,在commit之前宕機了)

AFTER_COMMIT:Master commit之后再將日志復制到Slave。
所有master上commit的事務不一定復制到slave。(比如,master commit之后,還沒來得及將日志復制到slave就宕機了)
所有已經復制到slave的事務在master上一定commit了。
很明顯,AFTER_COMMIT在master宕機的情況下,無法保證數據的一致性(master commit之后,還沒來得及將日志復制到slave就宕機了)。本文接下來只討論AFTER_SYNC模式。
MySQL5.7.3開始支持配置半同步復制等待Slave應答的個數:rpl_semi_sync_master_wait_slave_count 。

AFTER_SYNC模式下的異常情況分析

異常情況1:master宕機后,主備切換。

master執行事務T,在將事務T的binlog刷到硬盤之前,master發生宕機。slave升級為master。master重啟后,crash recovery會對事務T進行回滾。主備數據一致。

master執行事務T,在將事務T的binlog刷到硬盤之后,收到slave的ACK之前,master發生宕機(存在pendinglog)。slave升級為master。

2.1 slave還沒有收到事務T的binlog,master重啟后,crash recovery會直接提交pendinglog。主備數據不一致。

2.2 slave已經收到事務T的binlog。主備數據一致。

異常情況2:master宕機后,不切換主機。只需考慮異常情況1中的2.1。

master重啟后,直接提交pendinglog,此時,主備數據不一致:

slave連接上master,通過異步復制的方式獲得事務T的binlog。主備數據一致。
slave還沒來得及復制事務T的binlog,如果master又發生宕機,磁盤損壞。主備數據不一致,事務T的數據丟失。
異常情況處理

從上面異常情況的簡單分析我們得知,半同步復制需要處理master宕機后重啟存在pendinglog(slave沒有應答的binlog)的特殊情況。

針對master宕機后,不進行主備切換的情形:

在crash recovery之后,master等到slave的連接和復制,直到至少有一個slave復制了所有已提交的事務的binlog。(SHOW MASTER STATUS on master and SELECT master_pos_wait()  on slave)。

針對master宕機后,進行主備切換的情形:

舊master重啟后,在crash recovery時,對pendinglog進行回滾。(人工截斷master的binlog未復制的部分?)

思考

為什么master重啟之后,crash recovery的過程中,是直接commit pendinglog,而不是重試請求slave的應答呢?

MySQL的異步復制和半同步復制都是由slave觸發的,slave主動去連接master同步binlog。

沒有發生主備切換,機器重啟后無法知道哪臺機器是slave。
如果發生主備切換,它已經不是master了,則不會再有slave連上來。如果繼續等待,則無法正常運行。

總結

MySQL半同步復制存在以下問題:

  1. 當Slave超時時,會退化成異步復制。
  2. 當Master宕機時,數據一致性無法保證,需要人工處理。
  3. 復制是串行的。

正因為MySQL在主備數據一致性存在著這些問題,影響了互聯網業務7*24的高可用服務,因此各大公司紛紛祭出自己的“補丁”:騰訊的TDSQL、微信的PhxSQL、阿里的AliSQL、網易的InnoSQL。

MySQL官方已經在MySQL5.7推出新的復制模式——MySQL Group Replication。

參考文獻

MySQL半同步復制的數據一致性探討

MySQL High Availability Solutions

Loss-less Semi-Synchronous Replication on MySQL 5.7.2

Enhanced semisync replication

您可能感興趣的文章:
  • MYSQL 完全備份、主從復制、級聯復制、半同步小結
  • MySQL半同步復制原理配置與介紹詳解
  • Mysql半同步復制原理及問題排查
  • 深入解析半同步與異步的MySQL主從復制配置
  • 詳解MySQL的半同步

標簽:浙江 阿里 鄂州 張家界 中衛 定西 南寧 上海

巨人網絡通訊聲明:本文標題《簡單談談MySQL的半同步復制》,本文關鍵詞  簡單,談談,MySQL,的,半,同步,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《簡單談談MySQL的半同步復制》相關的同類信息!
  • 本頁收集關于簡單談談MySQL的半同步復制的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产不卡视频一区二区三区| 国产大陆a不卡| 欧美性三三影院| 日本韩国欧美三级| 精品一区二区三区视频在线观看| 日韩电影一区二区三区四区| 国产精品嫩草影院av蜜臀| 国产精品久久网站| 国产一区二区三区在线看麻豆| 黑人精品欧美一区二区蜜桃| 亚洲少妇30p| 国产亚洲精久久久久久| 久久久不卡影院| 国产精品久久久久久久久久免费看| 奇米色777欧美一区二区| 亚洲午夜视频在线| 久久电影网电视剧免费观看| 99热精品国产| 久久久国产精品不卡| 亚洲欧洲无码一区二区三区| 日韩av不卡一区二区| 大陆成人av片| 欧美老肥妇做.爰bbww| 久久色视频免费观看| 亚洲精品成人天堂一二三| 精品午夜一区二区三区在线观看| 久久精品夜色噜噜亚洲a∨| 一区二区三区中文字幕精品精品| 欧美精品久久天天躁| 日韩精品一区二区三区三区免费| 成熟亚洲日本毛茸茸凸凹| 91精品午夜视频| 亚洲精品成人精品456| 成人av网站大全| 国产精品久久久久久久蜜臀| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 欧美视频精品在线观看| 国产午夜精品一区二区三区嫩草 | 成人污污视频在线观看| 精品久久久久久久久久久久包黑料| 欧美综合一区二区三区| 国产日韩欧美一区二区三区综合| 亚洲小说欧美激情另类| 91色在线porny| 日本一区二区三区四区在线视频 | 国产精品久久毛片| a4yy欧美一区二区三区| 日韩美女精品在线| 91精品国产品国语在线不卡| 另类调教123区| 中文字幕不卡一区| 欧美伊人久久大香线蕉综合69| 色av综合在线| 亚洲一区在线观看网站| 欧美日韩高清一区二区三区| 日韩av电影免费观看高清完整版 | 日韩欧美国产一区二区在线播放| 欧美一区二区三区人| 久草精品在线观看| 尤物视频一区二区| 久久久久久影视| 欧美系列一区二区| 在线亚洲+欧美+日本专区| 精品一区二区三区免费播放| 亚洲成人免费看| 最新热久久免费视频| 久久久亚洲精品石原莉奈| 不卡av电影在线播放| 免费在线看一区| 日韩国产一二三区| 亚洲视频一区二区在线观看| 亚洲精品一区二区三区四区高清| 亚洲同性gay激情无套| 欧美电视剧在线看免费| 欧美日韩国产综合草草| 91传媒视频在线播放| 91在线观看美女| 成人毛片老司机大片| a级精品国产片在线观看| 国产.欧美.日韩| 91在线观看美女| 91网站最新网址| 欧美日韩免费观看一区二区三区| 久久先锋影音av鲁色资源| 日韩精品在线一区| 久久只精品国产| 综合欧美一区二区三区| 一区二区三区欧美久久| 天天射综合影视| 2024国产精品| 亚洲桃色在线一区| 亚洲人精品午夜| 亚洲色图19p| 国产精品久久久久一区| 亚洲精品中文字幕乱码三区| 亚洲美女屁股眼交| 天堂精品中文字幕在线| 国产精品影视在线观看| av福利精品导航| 日韩三级av在线播放| 国产精品国产a| 尤物视频一区二区| 麻豆精品视频在线观看| 色噜噜夜夜夜综合网| 91福利在线免费观看| 久久久久国产精品厨房| 一级女性全黄久久生活片免费| 欧美三级三级三级| 亚洲精品一线二线三线| 亚洲欧美中日韩| 免费高清不卡av| 2022国产精品视频| 97精品电影院| 久久久一区二区| 日本特黄久久久高潮| 色婷婷精品久久二区二区蜜臀av| 久久精品一区八戒影视| 国产精品国产精品国产专区不蜜 | 亚洲女人的天堂| 亚洲一区二区精品久久av| 成人福利视频网站| 亚洲精品成人少妇| 国产精品亚洲一区二区三区妖精 | 日韩精品一区二区在线| 午夜伦理一区二区| 欧美性做爰猛烈叫床潮| 免费欧美高清视频| 欧美色区777第一页| 日韩av一级片| 欧美日产在线观看| 美腿丝袜在线亚洲一区| 久久九九全国免费| 99精品国产视频| 激情亚洲综合在线| 国产精品电影一区二区三区| 色综合久久久久久久久久久| 日韩精品1区2区3区| 欧美一区二区三区爱爱| 免费在线一区观看| 精品国产污网站| 在线观看www91| 国产美女一区二区三区| 一区二区三区在线观看国产| 日韩欧美国产一区二区在线播放 | 蜜桃av噜噜一区| 日韩一区二区三区在线观看| 国产电影一区二区三区| 一区二区三区中文字幕| 日韩一区二区免费在线电影| 豆国产96在线|亚洲| 午夜av电影一区| 亚洲同性gay激情无套| 日韩精品中文字幕在线一区| 欧美日韩一本到| 91麻豆精品视频| 91小视频免费看| 成人性生交大片免费看中文 | 久久99蜜桃精品| 亚洲国产成人高清精品| 精品一二线国产| 国产精品99久久久久久似苏梦涵 | 国产一区二区不卡老阿姨| 日韩中文字幕区一区有砖一区| 成人涩涩免费视频| 国产一区二区三区在线观看免费视频 | 亚洲国产精品欧美一二99 | 国产三级一区二区| 中文字幕在线不卡一区二区三区| 久久一留热品黄| 久久久久99精品一区| 中文字幕一区二区三区视频| 樱花影视一区二区| 亚洲国产精品一区二区久久 | 911国产精品| 日本一区二区不卡视频| 亚洲成在线观看| 成人性生交大合| 精品成人一区二区| 国产精品素人一区二区| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美国产日韩在线观看| 亚洲一区二区欧美| 免费成人深夜小野草| 欧美日韩精品久久久| 日韩码欧中文字| 国产精品99精品久久免费| 亚洲午夜久久久久久久久电影网| 亚洲电影一级片| 国产激情一区二区三区| 日韩免费高清视频| 麻豆国产一区二区| 日韩视频一区二区在线观看| 亚洲chinese男男1069| 91视频.com| 免费成人小视频| 欧美老女人在线| 亚洲成人av中文| 欧美电影在线免费观看| 一区二区三区在线视频观看| 色综合久久中文综合久久97|