精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

MySQL中的binlog和relay-log結(jié)構(gòu)完全詳解

數(shù)據(jù)庫 MySQL
今天我們來深挖一下mysql的復(fù)制機(jī)制到底有哪一些,以及binlog和relay-log的結(jié)構(gòu)到底是什么樣子的。

[[342722]]

今天我們來深挖一下mysql的復(fù)制機(jī)制到底有哪一些,以及binlog和relay-log的結(jié)構(gòu)到底是什么樣子的。

binlog作用

binlog的主要作用是記錄數(shù)據(jù)庫中表的更改,它只記錄改變數(shù)據(jù)的sql,不改變數(shù)據(jù)的sql不會寫入,比如select語句一般不會被記錄,因?yàn)樗麄儾粫?shù)據(jù)產(chǎn)生任何改動。

用一個(gè)實(shí)際的場景看下binlog產(chǎn)生的過程,準(zhǔn)備sql: 

  1. create table test(text varchar(20));  
  2. insert into test values ('test_text'); 
  3. select * from test;  
  4. flush logs; 

查看binlog 

  1. show binlog events in 'binlog.000029'; 

顯示的結(jié)果如下:

binlog

另外,也可以使用mysqlbinlog工具來查看binlog的內(nèi)容: 

  1. show variables like 'log_%'; #查看日志目錄  
  2. mysqlbinlog --short-form --force-if-open --base64-output=never /usr/local/var/mysql/binlog.000029 

從日志我們可以看到執(zhí)行了創(chuàng)建表的語句以及一個(gè)Format_desc頭和Ratate輪換事件,這個(gè)我們會在后面講到,先看幾個(gè)字段代表的含義。

Log_name代表日志文件的名稱,比如我這里的查詢是直接查詢binlog.000029,默認(rèn)的寫法是show binlog events,但是這樣只會查詢到第一個(gè)binlog,并不是當(dāng)前激活狀態(tài)的binlog,如果你不知道binlog有哪些,可以用命令: 

  1. show binary logs; #查看binlog列表  
  2. show master status; #查看最新的binlog 

Pos代表文件開始的位置。

Event_type代表事件的類型。

Server_id是創(chuàng)建事件的服務(wù)器ID。

End_log_pos代表事件在文件中的結(jié)束位置,以上面為例,第一次查詢的結(jié)束位置是723,第二次insert之后文件的開始位置就是從723開始。

Info代表事件信息,是一段可讀的文本內(nèi)容。

binlog日志結(jié)構(gòu)

binlog日志的結(jié)構(gòu)大概是長這樣的,它由索引文件和binlog文件組成,其中binlog事件又包含通用頭、提交頭和事件體3個(gè)部分組成。

首先說說索引文件,索引文件的每一行都包含了一個(gè)binlog文件的完整文件名(類似host-bin.001),一些命令比如flush logs將所有日志寫入磁盤會影響到索引文件。

每個(gè)binlog文件以若干個(gè)binlog事件組成,以格式描述事件(Format_description)作為文件頭(上面的binlog圖片F(xiàn)ormat_desc事件),以日志輪換事件(rotate)作為文件尾。

Format_description包含binlog文件的服務(wù)器信息、文件狀態(tài)的關(guān)鍵信息等。如果服務(wù)器關(guān)閉或者重啟,則會創(chuàng)建一個(gè)新的binlog文件,同時(shí)寫入一個(gè)新的format_description。他的格式大致如下。 

  1. 2                binlog-version  
  2. string[50]       mysql-server version  
  3. 4                create timestamp  
  4. 1                event header length  
  5. string[p]        event type header lengths 

日志輪換事件則包含下一個(gè)binlog的文件名以及開始讀取的位置,它由服務(wù)器寫完binlog后添加到文件尾,輪換事件并不會每次都存在,格式如下。 

  1. if binlog-version > 1 {  
  2. 8              position  
  3.  
  4. string[p]      name of the next binlog 

binlog事件包含若干個(gè)事務(wù)組成的組(group),每個(gè)組對應(yīng)一個(gè)事務(wù),如果是create alter語句不屬于事務(wù)語句的話,則他們本身就是一個(gè)組,每個(gè)組要么全部執(zhí)行,要么都不執(zhí)行。

binlog事件結(jié)構(gòu)

每個(gè)binlog事件由3個(gè)部分組成:

  1.  通用頭,包含binlog中所有事件具備的基本信息。
  2.  提交頭,對于不同類型的事件來說,提交頭的內(nèi)容也不盡相同
  3.  事件體,存儲事件的主要數(shù)據(jù),同樣對于不同類型事件也不同。

binlog輪換和清理

從上面的例子我們也可以看出來,binlog并非只有一個(gè),而基于真實(shí)的場景來說,始終寫一個(gè)binlog文件肯定也是不可取的,而binlog輪換主要有3個(gè)場景:

  1.  服務(wù)器啟動,每次服務(wù)器啟動都會生成一個(gè)新的binlog文件。
  2.  達(dá)到最大大小,可以通過binlog-cache-size控制大小,達(dá)到最大大小后將更換。
  3.  顯示刷新,flush logs將所有日志寫入磁盤,這時(shí)候會創(chuàng)建一個(gè)新的文件寫入,從第一個(gè)例子也能看出來執(zhí)行完之后生成了一個(gè)新的日志binlog.000030的文件并且開始的位置是4。

隨著時(shí)間的推移,我們的binlog文件會越來越多,這時(shí)候有兩種方式可以清除binlog:

  1.  通過設(shè)置expire-logs-days控制想保留的binlog日志文件天數(shù),系統(tǒng)將會自動清理。
  2.  通過PURGE BINARY LOGS手動清理

relay-log結(jié)構(gòu)

relay-log中繼日志是連接master和slave的核心,我們來深入了解一下它的結(jié)構(gòu)和使用。

image-20200909161115718

relay-log的結(jié)構(gòu)和binlog非常相似,只不過他多了一個(gè)master.info和relay-log.info的文件。

master.info記錄了上一次讀取到master同步過來的binlog的位置,以及連接master和啟動復(fù)制必須的所有信息。

relay-log.info記錄了文件復(fù)制的進(jìn)度,下一個(gè)事件從什么位置開始,由sql線程負(fù)責(zé)更新。

上一篇文章我們提到了整個(gè)復(fù)制流程的過程大概是這個(gè)樣子:

知道binlog和relay-log的結(jié)構(gòu)之后,我們重新梳理一下整個(gè)鏈路的流程,這里我們假定master.info和relay-log.info都是存在的情況:

  1.  Master收到客戶端請求語句,在語句結(jié)束之前向二進(jìn)制日志寫入一條記錄,可能包含多個(gè)事件。
  2.  此時(shí),一個(gè)Slave連接到Master,Master的dump線程從binlog讀取日志并發(fā)送到Slave的IO線程。
  3.  IO線程從master.info讀取到上一次寫入的最后的位置。
  4.  IO線程寫入日志到relay-log中繼日志,如果超過指定的relay-log大小,寫入輪換事件,創(chuàng)建一個(gè)新的relay-log。
  5.  更新master.info的最后位置
  6.  SQL線程從relay-log.info讀取進(jìn)上一次讀取的位置
  7.  SQL線程讀取日志事件
  8.  在數(shù)據(jù)庫中執(zhí)行sql
  9.  更新relay-log.info的最后位置
  10.  Slave記錄自己的binlog日志

但是在這里IO和SQL線程有會產(chǎn)生重復(fù)事件的問題,舉一個(gè)場景:

  1.  先記錄中繼日志,然后更新master.info位置
  2.  此時(shí)服務(wù)器崩潰,寫入master.info失敗
  3.  服務(wù)器恢復(fù),再次同步從master.info獲取到的是上一次的位置,會導(dǎo)致事件重復(fù)執(zhí)行

既然會有這個(gè)問題還為什么要這樣做呢?假設(shè)反過來,先更新master.info再記錄中繼日志,這樣帶來的問題就是丟失數(shù)據(jù)了。而mysql認(rèn)為丟失比重復(fù)更嚴(yán)重,所以要先刷新日志,保大還是保小mysql幫你做了決定。 

 

責(zé)任編輯:龐桂玉 來源: Python中文社區(qū)
相關(guān)推薦

2023-11-23 13:17:39

MySQL?數(shù)據(jù)庫

2024-05-30 08:03:17

2025-06-06 07:02:43

2020-08-20 12:10:42

MySQL日志數(shù)據(jù)庫

2024-03-14 14:18:58

MySQL業(yè)務(wù)設(shè)計(jì)事務(wù)

2010-09-02 14:53:19

DHCP Relay

2009-10-15 13:49:23

結(jié)構(gòu)化布線系統(tǒng)

2023-01-09 08:01:48

MySQL日志中繼

2024-05-28 00:10:00

JavaMySQL數(shù)據(jù)庫

2010-09-01 09:07:22

DHCP Relay

2025-01-15 13:19:09

MySQL日志事務(wù)

2009-11-05 13:38:45

Internet接入

2021-07-12 08:06:32

Java

2024-12-16 00:00:05

MySQL二進(jìn)制數(shù)據(jù)

2010-09-08 17:15:45

SQL循環(huán)結(jié)構(gòu)

2009-02-11 10:08:53

Cookie屬性JSP

2012-02-06 17:22:44

MySQL

2021-01-26 13:47:08

MySQL存儲數(shù)據(jù)

2024-08-28 13:09:50

2018-10-12 11:11:39

Oracle內(nèi)存結(jié)構(gòu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

欧洲精品毛片网站| 亚洲第一精品福利| 一区二区三区四区免费观看| 国产农村妇女毛片精品久久| 欧美日韩一区二区高清| 精品欧美一区二区三区精品久久| 午夜精品久久久久久久无码| 成人h小游戏| 国产一区二区三区免费| 性欧美办公室18xxxxhd| 91狠狠综合久久久久久| 日韩免费成人| 在线观看av一区| 欧美日韩中文字幕在线播放| 人成在线免费视频| 国产伦精品一区二区三区免费迷 | 手机看片国产日韩| 福利片一区二区| 欧美日韩黄色影视| 国产特级黄色大片| 先锋影音在线资源站91| 久久久精品影视| 成人免费视频观看视频| 国产精品一区二区三区四| 91精品二区| 亚洲性猛交xxxxwww| av av在线| japansex久久高清精品| 91久久一区二区| 福利在线一区二区| 黄色精品免费看| 中文字幕免费不卡| 欧美高清性xxxxhdvideosex| 性做久久久久久久久久| 久久成人久久鬼色| 国产精品久久久91| www.色就是色| 久久婷婷人人澡人人喊人人爽| 欧美三级中文字幕在线观看| 一呦二呦三呦精品国产| 成年女人免费视频| 五月天色婷婷综合| 伊人影院中文字幕| 久久久久久自在自线| 欧美激情精品久久久| 懂色av粉嫩av蜜臀av一区二区三区| 羞羞答答一区二区| 亚洲第一天堂无码专区| 精人妻一区二区三区| 一区二区三区日本视频| 欧美男男青年gay1069videost | 国产女人精品视频| 波多野结衣一区二区在线| 久久久www| 国产成人精品综合久久久| 成人午夜视频在线播放| 午夜在线播放视频欧美| 欧美中文在线免费| 日韩美一区二区| 久久午夜精品| 国产精品情侣自拍| 亚洲图片在线播放| 韩国精品在线观看| 亚洲最大的成人网| 亚洲黄色小说网| 99久久久国产精品免费蜜臀| 激情欧美一区二区三区中文字幕| 亚洲日本国产精品| 久久久一区二区| 天天好比中文综合网| 免费黄色网页在线观看| 一区二区三区自拍| 日韩小视频在线播放| 伊人色综合一区二区三区影院视频| 色综合久久久网| 午夜久久久精品| av日韩一区| 日韩女优av电影| 亚洲中文字幕一区| 精品久久影院| 欧美另类第一页| 国产污污视频在线观看| 日韩在线播放一区二区| 91人成网站www| 黄色一级大片在线免费看国产| youjizz久久| 日韩免费中文专区| 18av在线播放| 一本到一区二区三区| av中文字幕网址| 成人午夜大片| 中文字幕不卡在线视频极品| 久热这里有精品| 日韩一级在线| 成人免费视频网| 亚欧洲精品视频| 日韩毛片视频在线看| 我的公把我弄高潮了视频| 久久久人成影片一区二区三区在哪下载 | 国产成人小视频| 欧美日韩一区在线视频| av免费在线观| 91九色最新地址| 成人三级做爰av| 成人看的羞羞网站| 午夜精品一区二区三区视频免费看| 亚洲中文无码av在线| 国产iv一区二区三区| 午夜视频久久久| 免费高潮视频95在线观看网站| 在线成人av影院| 免费看污黄网站在线观看| 这里只有精品在线| 国产精品久久久久aaaa九色| 好吊色在线观看| 一区二区中文字幕在线| 日韩毛片在线免费看| 91国内精品| 久久久av亚洲男天堂| 无码人妻精品一区二区| 不卡免费追剧大全电视剧网站| 伊人情人网综合| 精品日本视频| 亚洲精品自拍第一页| 天堂资源在线播放| 国产激情一区二区三区| 日韩和欧美的一区二区| 偷拍自拍在线看| 亚洲精品www久久久| 国产探花在线免费观看| 精品一区二区三区影院在线午夜| 欧美三日本三级少妇三99| 九色porny丨入口在线| 欧美一区二区三区视频| 一本色道久久88| 日本成人在线视频网站| 日本一区视频在线观看免费| 欧美黑人粗大| 国产视频精品久久久| 一级免费在线观看| 成人av免费在线播放| 97超碰在线人人| youjizz亚洲| 久久久久久久999| 亚洲精品成人区在线观看| 亚洲欧美一区二区久久| 91网址在线观看精品| 亚洲成人一区| 91在线播放视频| 4438x成人网全国最大| 日韩三级免费观看| 久久婷婷国产麻豆91| 丁香激情综合五月| 欧美成人三级在线视频| 日本亚洲不卡| 国产成人精品免高潮在线观看| 免费a级毛片在线观看| 色综合一个色综合| 久久久久久久久福利| 日韩成人dvd| 精品久久久久久久中文字幕| 久久精品视频一区二区三区| 中文字幕一区av| 91国自产精品中文字幕亚洲| 激情五月亚洲色图| 日本少妇久久久| 日本va欧美va瓶| 亚洲精品二区| 91麻豆精品| 美女视频久久黄| 亚洲精品中文字幕成人片| 亚洲成人免费电影| 国产精品1000部啪视频| 手机精品视频在线观看| 一区二区日本| 我要色综合中文字幕| 97福利一区二区| 岛国视频免费在线观看| 欧美电影一区二区| 精品在线视频免费| 久久久久久久电影| 亚洲美女爱爱视频| 亚洲毛片视频| 亚洲精品永久www嫩草| 日韩欧美中文在线观看| 欧美伊久线香蕉线新在线| 日韩专区在线| 亚洲第一av网站| 91麻豆成人精品国产免费网站| 一区二区视频在线| 日韩免费成人av| 成人一级片网址| 一区二区三区视频在线观看免费| 欧美有码视频| 欧美日韩国产免费一区二区三区| 欧美一级网址| 午夜精品久久久久久久99热| 一广人看www在线观看免费视频| 欧美一级一区二区| 成人黄色激情视频| 亚洲成人在线免费| 波多野结衣久久久久| 99久久er热在这里只有精品66| 99热一区二区| 午夜亚洲性色视频| 黄色一级片av| 日韩精品看片| 欧美国产亚洲视频| 欧美少妇性生活视频| 老司机在线精品视频| 国产在线视频91| 自拍网站在线观看| 欧美男插女视频| av免费观看一区二区| 亚洲精品按摩视频| 亚洲奶汁xxxx哺乳期| 欧美三级韩国三级日本一级| 精品国产乱码一区二区| 亚洲欧美日韩系列| a资源在线观看| 久久久精品黄色| 免费无码一区二区三区| 国产成人亚洲综合a∨猫咪| 最新av免费在线观看| 日本系列欧美系列| 久久久久久久久久久视频| 欧美成人精品| 色系列之999| 国产成人免费91av在线| 国产欧美最新羞羞视频在线观看| 亚洲欧洲精品一区二区| 头脑特工队2在线播放| 日韩一区二区高清| 中文字幕在线播出| 在线欧美日韩精品| 成人毛片在线播放| 红桃av永久久久| 日韩精品视频播放| 亚洲成人免费av| 日产精品久久久久| 亚洲一区二区三区精品在线| 精品欧美一区二区久久久久| 成人片免费看| www.豆豆成人网.com| 激情久久婷婷| 国产一区二区影院| 一本色道a无线码一区v| 亚洲国产欧美一区二区三区同亚洲 | 午夜无码国产理论在线| 欧美激情在线精品一区二区三区| 日韩不卡一二三区| 国产最新精品免费| 中文字幕电影一区| 欧美日韩一区二区在线观看视频| 久久精品视频播放| 欧美与黑人午夜性猛交久久久| 亚洲在线一区二区| 日本新janpanese乱熟| 国产精品第56页| 色呦呦免费观看| 国产原创一区| 日韩国产在线一| 欧美日韩精品国产| 欧美精品18videosex性欧美| 91精品国产91久久久久青草| 亚洲成人自拍视频| 伊人成人222| 中文字幕第四页| 欧美13videosex性极品| 99视频精品| 精品日韩美女的视频高清| 国产91免费看片| 日韩av.com| 手机在线观看毛片| 香蕉视频一区| 亚洲人成电影网站色mp4| 蜜臀久久99精品久久久无需会员 | 中文字幕亚洲一区在线观看| 就去色蜜桃综合| 男人天堂av电影| 操你啦在线视频| 国产视频一区在线观看一区免费| 欧美日韩精品国产| 99久热re在线精品996热视频| 香港日本韩国三级网站| 亚洲福利在线观看视频| 国产精品视频一区二区三区四蜜臂| 国产精品色在线观看| 国内免费久久久久久久久久久| www.99av.com| 丰满少妇高潮在线观看| 日韩精品dvd| 欧美日韩精品在线观看| 69堂成人精品视频免费| 在线看片中文字幕| 99riav在线| 久久激情婷婷| 亚洲国产成人在线播放| 欧美一区二区三区综合| 国产精品怡红院| 日韩欧美不卡| 在线一区二区观看| 欧美乱偷一区二区三区在线| 亚洲国产成人无码av在线| 国产理论电影在线| 亚洲伊人观看| 亚洲乱码一区av黑人高潮| 免费看毛片的网址| 天天综合永久入口| 99视频精品| 亚洲亚裔videos黑人hd| 女人和拘做爰正片视频| 欧美性受xxxx狂喷水| 亚洲高清网站| 精品久久久久久中文字幕一区奶水| 国产欧美精品一区二区| 最新日韩免费视频| 91精品麻豆| 性久久久久久久| 国产在线精品一区二区中文| 久久狠狠高潮亚洲精品| 综合综合综合综合综合网| 欧美曰成人黄网| 日本一区二区免费高清视频| 精品国产亚洲AV| 激情小说一区| 亚洲国产精品精华液网站| 国产在线欧美日韩| 一级做a爱片久久毛片| 91精品国产成人观看| 亚洲成人亚洲激情| 男女爽爽爽视频| 九色porny丨国产首页在线| 欧美激情在线一区二区三区| 91色在线观看| 国产剧情在线视频| 亚洲国产精品嫩草影院久久av| 午夜精品成人在线| 老司机av福利| 黄色视屏网站在线免费观看| 国产一区二区导航在线播放| 人体精品一二三区| 国产成人自拍视频在线| 99久久精品网站| 亚洲国产综合在线| 真人做人试看60分钟免费| 福利片在线观看| 91污在线观看| 精品午夜一区二区三区| 国产一区第一页| 嫩呦国产一区二区三区av| 在线观看网站黄不卡| 久久综合久久色| 国产ktv在线视频| 亚洲午夜影视影院在线观看| 一区一区视频| 91亚洲天堂| 亚洲欧美国产三级| 一区二区不卡在线视频 午夜欧美不卡'| 婷婷在线免费观看| 国产精品一区二区x88av| 最近2019年手机中文字幕| 久久av一区二区三| а√中文在线天堂精品| 亚洲激情视频在线播放| 朝桐光av一区二区三区| 欧美大片网址| 中文字幕一区二区精品| 69xxx免费| 欧美激情亚洲| 97精品久久久| 亚洲欧美偷拍视频| 美女视频黄 久久| 国产www精品| 一级国产黄色片| 你微笑时很美电视剧整集高清不卡| 日韩精品在线电影| 在线观看国产精品一区| 国产欧美日韩精品一区二区免费| 上原亚衣av一区二区三区| 在线免费观看亚洲视频| 国产日韩高清一区二区三区在线| 国产成一区二区| 免费的黄色av| 久久久三级国产网站| 天天想你在线观看完整版电影免费| 国产免费拔擦拔擦8x在线播放| 色婷婷综合久久久| 性欧美在线视频| 久久99影视| 亚洲男子天堂网| 日韩欧美123区| 午夜片欧美伦| 日韩女优在线播放| 色综合视频在线| 一区二区三区在线免费视频| 亚洲国产精品毛片av不卡在线| 波多野结衣欧美| 色综合久久久888| 精品黑人一区二区三区国语馆|