成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

MySQL實(shí)現(xiàn)主從復(fù)制的原理詳解

瀏覽:75日期:2023-07-20 19:52:12
目錄異步復(fù)制半同步復(fù)制垂直分庫水平分庫分表

主從復(fù)制是怎么實(shí)現(xiàn)的呢?

當(dāng)MySQL數(shù)據(jù)庫發(fā)生寫操作的時(shí)候會(huì)記錄下binlog,它是一種邏輯日志。有了這個(gè) binlog,從服務(wù)器會(huì)獲取主服務(wù)器的 binlog 文件,然后解析里面的 SQL 語句,在從服務(wù)器上面執(zhí)行一遍,保持主從的數(shù)據(jù)一致。

這里面涉及到三個(gè)線程:

IO線程

連接到 master 獲取 binlog,并且解析 binlog 寫入中繼日志,這個(gè)線程叫做 I/O 線程。

log dump線程

master 節(jié)點(diǎn)上有一個(gè) log dump 線程,是用來發(fā)送 binlog 給 slave 的。

sql線程

從庫的 sql 線程,是用來讀取 relay log,把數(shù)據(jù)寫入到數(shù)據(jù)庫的。

主從復(fù)制的方式

異步復(fù)制

在異步復(fù)制中,主庫執(zhí)行完操作后,寫入binlog日志后,就返回客戶端,這一動(dòng)作就結(jié)束了,并不會(huì)驗(yàn)證從庫有沒有收到,完不完整,所以這樣可能會(huì)造成數(shù)據(jù)的不一致。

說到底,復(fù)制過程中數(shù)據(jù)是否一致,主要取決于Binlog日志的安全性與完整性

在MySQL中,有sync_binlog=n這一參數(shù),他的值表示每進(jìn)行n次事務(wù)提交,MySQL就將Binlog刷新到磁盤。如果這個(gè)值為1,就代表每提交一次事務(wù)(SQL),就將Binlog往磁盤刷新一次,這樣一來,就算數(shù)據(jù)庫宕機(jī)了,那么最多只能損失一次事務(wù)的數(shù)據(jù)。

但是,一旦多個(gè)事務(wù)并發(fā)提交時(shí),由于受sync_binlog的限制,MySQL只能按順序來處理這些請(qǐng)求,另外,高頻率的刷新binlog對(duì)IO的影響也很大,進(jìn)一步影響了數(shù)據(jù)庫的性能,所以,一般這個(gè)值都設(shè)為0或者其他值,在數(shù)據(jù)的安全性和高并發(fā)下的性能之間取得一個(gè)平衡。

為了更加有效的保護(hù)Binlog的安全性和完整性,MySQL5 .5之后引入了半同步復(fù)制

半同步復(fù)制

在異步復(fù)制中,我們遇到的一個(gè)主要問題就是,在復(fù)制過程當(dāng)中,主庫不會(huì)去驗(yàn)證Binlog有沒有成功復(fù)制到從庫,那如果主庫提交一個(gè)事務(wù)并寫入Binlog中后,當(dāng)從庫還沒有從主庫得到Binlog時(shí),主庫宕機(jī)了或因磁盤損壞等故障導(dǎo)致該事務(wù)的Binlog丟失了,那從庫就不會(huì)得到這個(gè)事務(wù),也就造成了主從數(shù)據(jù)的不一致。

而半同步復(fù)制,當(dāng)主庫每提交一個(gè)事務(wù)后,不會(huì)立即返回,而是等待其中一個(gè)從庫接收到Binlog并成功寫入Relay-log中才返回客戶端,所以這樣就保證了一個(gè)事務(wù)至少有兩份日志,一份保存在主庫的Binlog,另一份保存在其中一個(gè)從庫的Relay-log中,從而保證了數(shù)據(jù)的安全性和一致性。

另外,在半同步復(fù)制時(shí),如果主庫的一個(gè)事務(wù)提交成功了,在推送到從庫的過程當(dāng)中,從庫宕機(jī)了或網(wǎng)絡(luò)故障,導(dǎo)致從庫并沒有接收到這個(gè)事務(wù)的Binlog,此時(shí)主庫會(huì)等待一段時(shí)間(這個(gè)時(shí)間由rpl_semi_sync_master_timeout的毫秒數(shù)決定),如果這個(gè)時(shí)間過后還無法推送到從庫,那MySQL會(huì)自動(dòng)從半同步復(fù)制切換為異步復(fù)制,當(dāng)從庫恢復(fù)正常連接到主庫后,主庫又會(huì)自動(dòng)切換回半同步復(fù)制。

半同步復(fù)制的“半”體現(xiàn)在,雖然主從庫的Binlog是同步的,但主庫不會(huì)等待從庫執(zhí)行完Relay-log后才返回,而是確認(rèn)從庫接收到Binlog,達(dá)到主從Binlog同步的目的后就返回了,所以從庫的數(shù)據(jù)對(duì)于主庫來說還是有延時(shí)的,這個(gè)延時(shí)就是從庫執(zhí)行Relay-log的時(shí)間。所以只能稱為半同步。

總之這兩種策略,可以濃縮理解為,一個(gè)是“不管不問”,一個(gè)是“確認(rèn)到位就跑”。

讀寫分離

做了主從復(fù)制的方案之后,我們只把數(shù)據(jù)寫入 master 節(jié)點(diǎn),而讀的請(qǐng)求可以分擔(dān)到slave 節(jié)點(diǎn), 這種方案我們稱之為讀寫分離。

讀寫分離可以一定程度低減輕數(shù)據(jù)庫服務(wù)器的訪問壓力,但是需要特別注意主從數(shù)據(jù)一致性的問題。

我們?cè)谧隽酥鲝膹?fù)制之后,如果單個(gè) master 節(jié)點(diǎn)或者單張表存儲(chǔ)的數(shù)據(jù)過大的時(shí)候,比如一張表有上億的數(shù)據(jù),單表的查詢性能還是會(huì)下降,我們要進(jìn)一步對(duì)單臺(tái)數(shù)據(jù)庫節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行拆分,而這個(gè)拆分就是分庫分表。

常見的分庫分表策略

垂直分庫

把一個(gè)數(shù)據(jù)庫按照業(yè)務(wù)拆分成不同的數(shù)據(jù)庫:

水平分庫分表

把單張表的數(shù)據(jù)按照一定的規(guī)則分布到多個(gè)數(shù)據(jù)庫。

到此這篇關(guān)于MySQL實(shí)現(xiàn)主從復(fù)制的原理詳解的文章就介紹到這了,更多相關(guān)MySQL 主從復(fù)制內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: MySQL 數(shù)據(jù)庫
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美性色黄大片| 波多野结衣亚洲一区| 精品一区二区在线免费观看| 在线看片欧美| 欧美激情中文不卡| 99riav一区二区三区| 日韩美一区二区三区| 国产综合色视频| 欧美精品在线观看一区二区| 精品一区二区三区久久久| 91精品1区2区| 奇米精品一区二区三区在线观看| 久久性天堂网| 日本欧洲一区二区| 91九色最新地址| 美女视频黄久久| 欧美吞精做爰啪啪高潮| 久久精品国产亚洲高清剧情介绍| 色呦呦国产精品| 免费观看日韩电影| 欧美日韩一区二区三区四区| 久久av中文字幕片| 91麻豆精品国产无毒不卡在线观看 | 久久激情婷婷| 日韩精品一二三四| 91国在线观看| 国产一区在线不卡| 日韩午夜中文字幕| av中文一区二区三区| 26uuu精品一区二区三区四区在线| 成人18视频在线播放| 欧美不卡激情三级在线观看| 99久久99久久久精品齐齐| 国产色产综合色产在线视频| 永久久久久久| 亚洲午夜久久久久| 在线观看免费视频综合| 国模冰冰炮一区二区| 日韩欧美一二三| 欧美在线资源| 亚洲欧美乱综合| 色综合激情五月| 国产又粗又猛又爽又黄91精品| 91精品国产色综合久久不卡蜜臀 | 欧美日韩国产区一| 成人高清在线视频| 国产精品日产欧美久久久久| 国产日本精品| 日本怡春院一区二区| 9191国产精品| 欧美1区3d| 夜夜亚洲天天久久| 欧美色大人视频| 99久久免费精品| 亚洲美女电影在线| 在线一区二区三区做爰视频网站| 韩国成人在线视频| 国产欧美一区二区精品性| 含羞草久久爱69一区| 亚洲高清不卡在线观看| 欧美日韩国产欧美日美国产精品| 99精品视频中文字幕| 亚洲激情综合网| 欧美精品在线视频| 欧美国产专区| 视频精品一区二区| 日韩女优制服丝袜电影| 国内精品久久国产| 日韩精品成人一区二区三区| 日韩欧美中文一区| 一区二区亚洲精品| 男女男精品视频| 久久久精品影视| 国产日韩精品视频一区二区三区| 久草中文综合在线| 国产精品免费人成网站| 在线观看免费视频综合| 99久久婷婷国产| 五月天视频一区| 精品成人一区二区三区| 亚洲成人直播| 狠狠色丁香久久婷婷综合_中| 国产亚洲欧美激情| 久久精品人人| 91蜜桃视频在线| 午夜影视日本亚洲欧洲精品| 精品毛片乱码1区2区3区| 国产日韩欧美一区在线| 国产精品一线二线三线精华| 亚洲日本电影在线| 日韩一二三区不卡| 国产精品区一区| 成人精品视频一区二区三区| 亚洲第一成年网| 久久亚洲精华国产精华液| 久久综合中文| 午夜久久资源| 久久精品国产精品亚洲红杏| 国产精品美女久久福利网站| 欧美亚洲综合一区| 亚洲第一黄网| 国产精品影视天天线| 亚洲精品乱码久久久久久| 91麻豆精品国产无毒不卡在线观看 | 亚洲一区网站| 99久久综合国产精品| 五月天久久比比资源色| 中文字幕高清一区| 欧美高清你懂得| 午夜一区二区三区不卡视频| 97国产一区二区| 裸体一区二区三区| 自拍偷拍亚洲激情| 精品国产网站在线观看| 色婷婷亚洲精品| 禁久久精品乱码| 成人理论电影网| 青青草国产精品亚洲专区无| 国产精品福利一区二区三区| 日韩欧美一级二级三级久久久| 久久成人亚洲| 欧美午夜免费| 成人一区二区三区视频在线观看 | 亚洲一级高清| 成人少妇影院yyyy| 日韩精品每日更新| 亚洲丝袜制服诱惑| 国产亚洲自拍一区| 91精品国产品国语在线不卡| 美女国产一区| 亚洲精品日韩精品| 欧美成人午夜| 欧美大片国产精品| 欧美性xxxxxxxx| 亚洲免费在线| 永久久久久久| 欧美国产高潮xxxx1819| 国产久卡久卡久卡久卡视频精品| 婷婷开心久久网| 一区二区三区在线观看欧美| 国产日产欧产精品推荐色 | 日韩经典中文字幕一区| 亚洲视频免费看| 国产日韩视频一区二区三区| 欧美一区二区三区小说| 欧美少妇性性性| 久久一二三四| 亚洲欧美日韩精品一区二区| 在线观看视频免费一区二区三区| 99久久er热在这里只有精品66| 国产乱子伦一区二区三区国色天香| 亚洲www啪成人一区二区麻豆 | 亚洲精品日韩一| 国产精品免费av| 国产女人aaa级久久久级 | 在线亚洲人成电影网站色www| 一区二区三区欧美在线| 亚洲香蕉视频| 欧美午夜a级限制福利片| 91天堂素人约啪| 成人av动漫在线| 国产91精品入口| 国产精品亚洲一区二区三区在线 | 欧美日韩国产首页在线观看| 欧美亚洲国产一区二区三区va| 美女主播一区| 久久国产精品亚洲va麻豆| 国产精品一区免费观看| 国产农村妇女毛片精品久久莱园子| 一区二区精品| 亚洲日本欧美| 亚洲承认在线| 一区二区精品在线| 国产精品主播| 久久久久国产一区二区| 久久综合伊人| 在线免费观看日韩欧美| 在线观看一区二区视频| 欧美写真视频网站| 欧美日韩不卡视频| 欧美老肥妇做.爰bbww| 56国语精品自产拍在线观看| 欧美一区二区人人喊爽| 欧美一级国产精品| 精品乱人伦小说| 久久精品在线观看| 欧美激情中文字幕一区二区| 亚洲欧洲精品一区二区精品久久久 | 91极品视觉盛宴| 欧美日韩国产成人在线免费| 6080午夜不卡| 日韩免费成人网| 日本一区二区三区视频视频| 国产精品久久网站| 亚洲欧美一区二区三区久本道91| 亚洲你懂的在线视频| 一区二区三区成人| 婷婷开心久久网| 黄一区二区三区| 成人福利电影精品一区二区在线观看|