并發(fā)復(fù)制parallel replication系列一_第1頁
并發(fā)復(fù)制parallel replication系列一_第2頁
并發(fā)復(fù)制parallel replication系列一_第3頁
并發(fā)復(fù)制parallel replication系列一_第4頁
并發(fā)復(fù)制parallel replication系列一_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

MySQL并發(fā)復(fù)制系列一:binlog組提并發(fā)復(fù)制(PMySQL并發(fā)復(fù)制系列一:binlog組提并發(fā)復(fù)制(ParallRn)系列一:BnayLogGroupMySQL MySQLBinarylogInnoDB儲引redoundosafecrashrecovery據(jù)庫,當(dāng)數(shù)crashrecoveryredoredologprepared但是cmmttransactionsundolog做rollback。然后客戶端連接時就能看到已MySQLBinarylog1二階段提交StorageEngine(InnoDBBinarylogMySQLcrashrecoveryprepare階段crash,數(shù)據(jù)recovery的時候該事Binarylog并且存儲引擎未提交,將該事務(wù)rollback。當(dāng)事務(wù)在Bnarygfsyc(crash未來得及,LyL中cmmit況下怎么保證存儲引擎和BinaryLog提交的順序一致?當(dāng)多個事務(wù)并發(fā)提交的情況,如BinaryLog和存圖2InnoDB存儲引圖2InnoDB存儲引擎提交的順序與MySQL上層如上圖:事務(wù)按照T1、T2、T3順序開始執(zhí)行,將二進(jìn)制日志(按T1、T2、T3順序)寫入日志文件commit將日志文件永久寫入磁盤,但是存儲引擎提交的順序T2統(tǒng)緩存,調(diào)用fsync()進(jìn)行一次T3、T1。T2、T3提交事務(wù)之后做On-linebackup程序新建一個slavereplication,那么SlavechangemastertoT33通過prepare_commit_mutex保證存儲引擎和二進(jìn)制日3通過prepare_commit_mutex保證存儲引擎和二進(jìn)制日志順序提交順序圖3可以看出在prepare_commit_mutex,只有當(dāng)上一個事務(wù)commit后釋放鎖,下一個事務(wù)才可以進(jìn)行sync_binlog參數(shù)來設(shè)置多少個binlog日志產(chǎn)生的時候調(diào)用一次fsync()把二進(jìn)制日志刷入磁盤來提高整體,二進(jìn)制日志groupcommitSyncstage、Commitstage存儲引擎(InnoDB)數(shù)據(jù)庫上層(Binary----Sync--------調(diào)存儲引擎(InnoDB)Commitleaderfollower,leaderleaderfollower,leaderfollower圖4:二進(jìn)制日志三階段提交過程Flushstagebinarylog么為了groupcommit中一組隊列的事務(wù)數(shù)量,MySQL用binlog_max_flush_queue_time來控制在FlushMySQL5.7Parallelreplication現(xiàn)主備多線程復(fù)制基于主BinaryLogGroupCommit,Binarybinlog_group_commit_sync_delay=N和binlog_group_comm

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論