精品欧美一区二区三区在线观看 _久久久久国色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ù)棧公眾號

中文字幕一区二区三区5566| 国产精国产精品| 国产资源中文字幕| 老色鬼在线视频| 久久久精品一品道一区| 成人福利网站在线观看| 国产一级片免费观看| 精品在线观看入口| 91精品一区二区三区在线观看| 久久久久久国产精品久久| 国产二级一片内射视频播放 | 日本三级片在线观看| 亚洲最好看的视频| 91精品国产综合久久久蜜臀粉嫩| 国产日韩亚洲欧美在线| 欧美日韩 一区二区三区| 欧美freesextv| 欧美日韩亚洲精品一区二区三区| 91综合免费在线| 少妇人妻好深好紧精品无码| 国产精品**亚洲精品| 五月婷婷综合在线| 热这里只有精品| 日本ー区在线视频| 国产一区二区三区国产| 国产99在线|中文| 青青操国产视频| 欧美另类69xxxxx| 亚洲变态欧美另类捆绑| 欧美一级特黄aaa| 日韩黄色影院| 91亚洲精华国产精华精华液| 深夜福利亚洲导航| 日b视频在线观看| 亚洲精品三区| 色老头久久综合| 欧美一区1区三区3区公司 | 国产精品婷婷| 欧美精品一区二区免费| www.亚洲高清| 蜜桃麻豆av在线| 一区二区三区小说| 中文字幕超清在线免费观看| 黄色影院在线播放| 99久久精品免费看国产免费软件| 91在线免费观看网站| 成人免费一区二区三区| 久久九九精品| 91av在线视频观看| 日韩 欧美 亚洲| 国产中文一区| 欧美乱人伦中文字幕在线| 精品无码av一区二区三区不卡| 韩国精品视频在线观看| 欧美亚洲日本一区| 91制片厂免费观看| 四虎久久免费| 国产精品久久久久影视| 亚洲一区二区三区四区在线播放| 中文天堂在线资源| 日本欧美一区二区三区乱码| 北条麻妃久久精品| 免费黄色国产视频| 久久免费精品视频在这里| 在线不卡国产精品| 日韩一级片在线免费观看| 国产精品三级| 永久免费毛片在线播放不卡| 亚洲人成人无码网www国产 | 欧美日韩在线精品一区二区三区| 三级毛片在线免费看| 91视视频在线直接观看在线看网页在线看 | 在线播放91灌醉迷j高跟美女 | 日本aⅴ在线观看| 亚洲欧美文学| 91国语精品自产拍在线观看性色 | 在线亚洲+欧美+日本专区| 久久精品网站视频| 激情久久99| 欧美一级理论性理论a| 一级黄色大片免费看| 成人另类视频| 亚洲视频欧美视频| 亚洲欧美综合7777色婷婷| 欧美粗暴jizz性欧美20| 午夜精品久久久久久99热| 日本中文字幕久久| 麻豆成人久久精品二区三区红| 成人黄色午夜影院| 亚洲精品久久久久久无码色欲四季 | 欧美成人在线影院| 久久精品久久国产| 久久久精品性| 成人激情电影一区二区| 国产综合在线播放| 久久久久国产精品厨房| 免费国产成人看片在线| 国产一二在线播放| 免费网站成人| 秋霞电影一区二区| 成人在线小视频| 国产综合视频在线| 亚洲国产激情av| 欧美另类videos| 不卡av影片| 欧美一区二区在线视频| 中文字幕第3页| 久久麻豆精品| 91成人福利在线| 国产一区二区三区黄片| 成人av在线播放网址| 亚洲精品日韩在线观看| 国产嫩草在线视频| 欧美三级日韩三级国产三级| 波多野结衣 作品| 九九精品调教| 成人不用播放器| 久久综合图片| 成人日韩av在线| 污视频在线免费| 亚洲图片欧美激情| av网址在线观看免费| 奇米一区二区| 在线成人一区二区| 久久99精品波多结衣一区| 久久精品国产99国产精品| 国产日韩欧美亚洲一区| 黄色在线免费看| 91久久精品网| xxxx黄色片| 一区二区电影在线观看| 国产盗摄xxxx视频xxx69| 色欲av伊人久久大香线蕉影院| 国产精品进线69影院| 久草在在线视频| 日韩欧美中文字幕电影| 国产69精品久久久久9999| av在线免费在线观看| 中文子幕无线码一区tr| 国产男女无遮挡| 好吊妞国产欧美日韩免费观看网站| 日韩视频一区二区三区在线播放| www.av天天| 久久精品中文| 久久综合入口| 免费在线小视频| 亚洲第一天堂无码专区| 久草网视频在线观看| 国产一区不卡在线| 在线观看视频黄色| 国产不卡精品| 久久久黄色av| 国产精品系列视频| 亚洲色图在线视频| 99九九99九九九99九他书对| 久久人体视频| 成人免费网站在线| 成人免费网址| 日韩一区二区高清| 国产精品19乱码一区二区三区| 成人午夜视频网站| 免费成人午夜视频| 亚洲警察之高压线| 日韩av免费在线| 国产爆初菊在线观看免费视频网站| 色综合久久九月婷婷色综合| 免费看黄色的视频| 青娱乐精品在线视频| 在线看视频不卡| www999久久| 久久久久久中文| 色视频免费在线观看| 91成人免费网站| 男人晚上看的视频| 国产精品996| 成人在线观看你懂的| 亚洲精品中文字幕99999| 国产精品美女网站| 男人天堂综合网| 国产精品天美传媒| 蜜臀一区二区三区精品免费视频| av日韩在线播放| 91成人福利在线| 不卡在线视频| 欧美一区二区女人| wwwxxx亚洲| 国产精品免费视频观看| 国产伦精品一区二区三区妓女下载| 一区在线播放| 亚洲精品中字| 99精品中文字幕在线不卡| 日本久久亚洲电影| 国产美女福利在线| 精品亚洲一区二区三区在线观看 | 欧美在线性视频| 97免费观看视频| 亚洲一区二区在线视频| 91视频免费观看网站| 美女任你摸久久| 97中文字幕在线| 国产一区不卡| 99久热re在线精品996热视频| 午夜影院在线观看国产主播| 色999日韩欧美国产| 内射无码专区久久亚洲| 欧美怡红院视频| 不卡的免费av| 国产精品乱人伦一区二区| 中文字幕乱码一区| 美女视频免费一区| 久久亚洲中文字幕无码| 99久久视频| 欧美男人的天堂| 91蝌蚪精品视频| 国产精品女人久久久久久| 美女精品视频| 色av吧综合网| 亚洲人视频在线观看| 日韩欧美成人一区| 中文字幕人妻精品一区| 亚洲国产中文字幕| 91高清免费看| 国产自产2019最新不卡| 成年人免费在线播放| 欧美在线91| 亚洲视频导航| 日韩av黄色| 中文字幕日韩精品在线观看| 熟妇人妻一区二区三区四区| 欧美一区二区视频在线观看| 无码任你躁久久久久久久| 亚洲国产美女搞黄色| 欧美日韩黄色网| 欧美激情一区二区三区蜜桃视频 | 亚洲日韩中文字幕一区| 国产精品电影久久久久电影网| wwww在线观看免费视频| 另类天堂视频在线观看| 欧美精品videos另类| 国产视频一区在线| 亚洲色图另类小说| 日韩不卡中文字幕| 天天综合永久入口| 亚洲精品在线网站| 亚洲免费成人网| 日韩精品一区二区在线| 成人黄色在线观看视频| 91精品免费在线| 91国产免费视频| 欧美日本在线播放| 91九色蝌蚪91por成人| 欧美日韩国产影片| 国产伦精品一区二区三区视频痴汉 | 美女精品自拍一二三四| 欧美精品性生活| 日韩精品欧美精品| 午夜在线观看av| 日本不卡123| 精品亚洲一区二区三区四区| 日本v片在线高清不卡在线观看| 国产高清视频网站| 九九**精品视频免费播放| 在线免费看污网站| 国产精品一区在线| 成人一对一视频| 一区二区三区四区五区在线| 国产精品久久中文字幕| 国产一区二区三区久久| 亚洲一二三区av| 欧美色123| 精品国偷自产一区二区三区| 亚洲久色影视| 一区二区传媒有限公司| 午夜亚洲视频| 999在线免费视频| 激情综合五月天| 色哟哟网站在线观看| 99免费精品视频| 中国毛片在线观看| 国产精品视频九色porn| 亚洲天堂黄色片| 亚洲成人黄色影院| 波多野结衣在线观看一区| 欧美日韩国产美| 亚洲成人av综合| 亚洲精品一区中文字幕乱码| av电影在线观看| 欧美精品在线观看| 日本黄色免费在线| 成人黄色大片在线免费观看| 亚洲网一区二区三区| 久久精品日韩精品| 欧美黄色大片在线观看| 国产成人在线小视频| 可以看av的网站久久看| 亚洲精品mv在线观看| 99re热视频精品| 羞羞在线观看视频| 午夜精品福利一区二区三区蜜桃| 国产精华7777777| 日韩欧美亚洲另类制服综合在线 | 亚洲视频一区二区三区| 在线中文字幕-区二区三区四区| 2019中文字幕在线观看| 一区二区三区| 麻豆成人av| 亚洲精品tv久久久久久久久久| 国产午夜福利100集发布| 久久国产日韩欧美精品| 好男人香蕉影院| 自拍偷拍欧美激情| 男人天堂av在线播放| 欧美va亚洲va香蕉在线| 在线激情小视频| 2019av中文字幕| 日韩一二三区在线观看| 日本一区二区三区在线视频| 亚洲午夜久久久久久尤物 | 日日夜夜天天综合| 成人欧美一区二区三区在线观看| 成人一区不卡| 免费看国产一级片| 国产91丝袜在线播放0| 无码人妻一区二区三区精品视频| 久久久久综合网| 久久久久久久国产精品毛片| 欧美日高清视频| 国产三级视频在线播放线观看| 国语自产精品视频在线看抢先版图片 | 欧美精品久久久久久久久| www.久久热| 亚洲一卡二卡三卡| 日本欧美在线看| 国产精品20p| 欧美性感美女h网站在线观看免费 欧美性xxxx在线播放 | 影视一区二区| 99九九99九九九99九他书对| 国产精品美日韩| 国产精品xxxxxx| 亚洲午夜久久久久久久| 成人免费无遮挡| 麻豆91av| 视频一区二区三区入口| 亚洲精品成人无码熟妇在线| 亚洲第一成年网| 色一情一乱一区二区三区| 亚州国产精品久久久| 久久久久影视| 国产69精品久久久久久久| 成人免费三级在线| 日韩久久精品视频| 亚洲国产欧美在线成人app| 色一情一乱一区二区三区| 欧美极品第一页| 成人看片黄a免费看视频| 精品少妇在线视频| 成人高清视频免费观看| 国产午夜精品无码一区二区| 亚洲精品电影网| 黑森林国产精品av| 久久久久久久久一区二区| 香蕉av777xxx色综合一区| 99久久久无码国产精品性| 色8久久精品久久久久久蜜| 国产福利在线视频| 国产日韩欧美在线| 国产精品一线| 精品无码国模私拍视频| 26uuu精品一区二区三区四区在线| 可以免费看的av毛片| 亚洲人成网站免费播放| 欧美97人人模人人爽人人喊视频| 中国一区二区三区| 成人综合婷婷国产精品久久免费| 日韩污视频在线观看| 亚洲欧美在线一区| 人人精品久久| 国产精品videossex国产高清 | 一级黄色电影片| 五月激情综合色| 国产高清一区在线观看| 国产自产女人91一区在线观看| 女人色偷偷aa久久天堂| 少妇被狂c下部羞羞漫画| 日本高清成人免费播放| 久久日韩视频| 国产一区免费| 毛片av一区二区三区| 久久国产精品二区| 亚洲视频在线免费观看| 国产精品亚洲一区二区在线观看 | 国产高清自拍一区| 日日夜夜精品视频免费| 印度午夜性春猛xxx交| 亚洲护士老师的毛茸茸最新章节| 精品裸体bbb| www.在线观看av| 欧美经典三级视频一区二区三区| a天堂中文在线观看| 欧洲成人性视频|