亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 詳解MySQL 重做日志(redo log)與回滾日志(undo logo)

詳解MySQL 重做日志(redo log)與回滾日志(undo logo)

熱門標簽:臨沂做地圖標注 地圖標注客戶付款 石家莊400電話辦理公司 廣東400企業電話申請流程 許昌外呼增值業務線路 咸陽防封電銷卡 申請400電話電話價格 宜賓全自動外呼系統廠家 新鄉智能外呼系統好處

前言:

前面文章講述了 MySQL 系統中常見的幾種日志,其實還有事務相關日志 redo log 和 undo log 沒有介紹。相對于其他幾種日志而言, redo log 和 undo log 是更加神秘,難以觀測的。本篇文章將主要介紹這兩類事務日志的作用及運維方法。

1.重做日志(redo log)

我們都知道,事務的四大特性里面有一個是 持久性 ,具體來說就是只要事務提交成功,那么對數據庫做的修改就被永久保存下來了,不可能因為任何原因再回到原來的狀態。那么 MySQL 是如何保證一致性的呢?最簡單的做法是在每次事務提交的時候,將該事務涉及修改的數據頁全部刷新到磁盤中。但是這么做會有嚴重的性能問題,主要體現在兩個方面:

  • 因為 Innodb 是以頁為單位進行磁盤交互的,而一個事務很可能只修改一個數據頁里面的幾個字節,這個時候將完整的數據頁刷到磁盤的話,太浪費資源了。
  • 一個事務可能涉及修改多個數據頁,并且這些數據頁在物理上并不連續,使用隨機 IO 寫入性能太差。

因此 MySQL 設計了 redo log ,具體來說就是只記錄事務對數據頁做了哪些修改,這樣就能完美地解決性能問題了(相對而言文件更小并且是順序IO)。

redo log 包括兩部分:一個是內存中的日志緩沖(redo log buffer),另一個是磁盤上的日志文件(redo log file)。MySQL 每執行一條 DML 語句,先將記錄寫入 redo log buffer ,后續某個時間點再一次性將多個操作記錄寫到 redo log file 。

默認情況下,redo log 在磁盤上由名為 ib_logfile0 和 ib_logfile1 的兩個物理文件展示。redo log 相關參數簡單介紹如下:

  • innodb_log_files_in_group:redo log 文件的個數,命名方式如:ib_logfile0,iblogfile1... iblogfilen。默認2個,最大100個。
  • innodb_log_file_size:單個 redo log 文件設置大小,默認值為 48M,最大值為512G,注意最大值指的是整個 redo log 系列文件之和,即(innodb_log_files_in_group * innodb_log_file_size )不能大于最大值512G。
  • innodb_log_group_home_dir:指定 redo log 文件組所在的路徑,默認./ ,表示在數據庫的數據目錄下。
  • innodb_log_buffer_size:redo log buffer 大小,默認16M。延遲事務日志寫入磁盤,把 redo log 放到該緩沖區,然后根據 innodb_flush_log_at_trx_commit 參數的設置,再把日志從 buffer 中 flush 到磁盤中。
  • innodb_flush_log_at_trx_commit:控制 redo log 刷新到磁盤的策略,默認為1。值為1,每次 commit 都會把 redo log 從 redo log buffer 寫入到 system ,并 fsync 刷新到磁盤文件中。值為2,每次事務提交時 MySQL 會把日志從 redo log buffer 寫入到 system ,但只寫入到 file system buffer,由系統內部來 fsync 到磁盤文件。如果數據庫實例 crash ,不會丟失 redo log,但是如果服務器 crash,由于 file system buffer 還來不及 fsync 到磁盤文件,所以會丟失這一部分的數據。值為0,表示事務提交時不進行寫入 redo log 操作,這個操作僅在 master thread 中完成,而在 master thread 中每1秒進行一次重做日志的 fsync 操作,因此實例 crash 最多丟失1秒鐘內的事務。

更改 redo log 及其 buffer 大小是需要重啟數據庫實例的,建議初始化時做好評估。可以適當加大 redo log 組數和大小,特別是你的數據庫實例更新比較頻繁的情況下。但也不推薦 redo log 設置過大。

2.回滾日志(undo log)

undo log 主要用于保證數據的原子性,保存了事務發生之前的數據的一個版本,可以用于回滾。比如一條 INSERT 語句,對應一條 DELETE 的 undo log ,對于每個 UPDATE 語句,對應一條相反的 UPDATE 的 undo log ,這樣在發生錯誤時,就能回滾到事務之前的數據狀態。同時,undo log 也是 MVCC (多版本并發控制) 實現的關鍵。

MySQL 5.7 版本中,undo log 默認存放在共享表空間 ibdata 中。也可以在初始化時通過配置參數改成獨立的文件,簡單介紹幾個 undo log 相關參數:

  • innodb_max_undo_log_size:控制最大 undo tablespace 文件的大小,當啟動了innodb_undo_log_truncate 時,undo tablespace 超過 innodb_max_undo_log_size 閥值時才會去嘗試truncate。該值默認大小為1G,truncate后的大小默認為10M。
  • innodb_undo_tablespaces:設置 undo 獨立表空間個數,范圍為0-128,5.7版本默認為0,0表示不開啟獨立undo表空間。該參數只能在最開始初始化 MySQL 實例的時候指定。
  • innodb_undo_directory:設置 undo 表空間的存放目錄,默認數據目錄。
  • innodb_undo_log_truncate:設置 undo 表空間是否自動截斷回收。該參數生效的前提是,已設置獨立表空間且獨立表空間個數大于等于2個。

undo log 相關參數一般很少改動。MySQL 8.0 默認啟用了獨立表空間,可能 undo log 表空間的大小設置更靈活些。

總結:

本篇文章主要介紹了 redo log 及 undo log 的作用和相關參數設置,文章寫的比較匆忙,如有錯誤,可以留言指出。關于這兩類日志更深層次的內容,可能筆者功力還不到,未能寫到更加透徹。好了,MySQL 相關日志的兩篇文章已經寫完了,希望各位能學到一點知識。

您可能感興趣的文章:
  • MySQL系列之redo log、undo log和binlog詳解
  • MySQL 撤銷日志與重做日志(Undo Log與Redo Log)相關總結
  • MySQL中的redo log和undo log日志詳解
  • 基于Redo Log和Undo Log的MySQL崩潰恢復解析
  • Mysql中undo、redo與binlog的區別淺析

標簽:鎮江 貴州 日照 鷹潭 北京 合肥 阜新 臺灣

巨人網絡通訊聲明:本文標題《詳解MySQL 重做日志(redo log)與回滾日志(undo logo)》,本文關鍵詞  詳解,MySQL,重做,日志,redo,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解MySQL 重做日志(redo log)與回滾日志(undo logo)》相關的同類信息!
  • 本頁收集關于詳解MySQL 重做日志(redo log)與回滾日志(undo logo)的相關信息資訊供網民參考!
  • 推薦文章
    欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 精品国产一区二区三区久| 成人影视在线观看| 久久久久久久男人的天堂| 午夜在线影院| 欧美一区二区三区性| 国产一区二区精品久久91| 超级乱淫伦动漫| 久久国产影院| 国产不卡福利| 日韩在线观看免费| 精品国产三级a| 免费的黄视频| 欧美激情一区二区三区视频高清 | 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 99久久精品国产免费| 成人免费网站久久久| 久草免费在线色站| 精品视频在线观看一区二区| 四虎久久精品国产| 久久久久久久网| 999久久66久6只有精品| 国产视频一区在线| 日韩一级黄色| 精品国产一区二区三区免费 | 国产一区二区精品久久91| 可以免费看污视频的网站| 国产a视频| 99色视频在线| 午夜在线亚洲男人午在线| 四虎久久精品国产| 成人免费高清视频| 久久99欧美| 国产成人精品综合在线| 国产精品自拍一区| 久久精品免视看国产成人2021| 青青久久网| 99久久网站| 99久久精品国产高清一区二区| 日日日夜夜操| 国产a一级| 精品久久久久久免费影院| 久久99欧美| 黄视频网站免费观看| 一本高清在线| 欧美激情在线精品video| 成人免费观看视频| 国产极品白嫩美女在线观看看| 久久国产精品自由自在| 国产成人精品综合久久久| 99久久精品国产免费| 久久精品成人一区二区三区| 精品视频免费观看| 日本在线播放一区| 国产亚洲精品aaa大片| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 99色播| 韩国毛片免费| 香蕉视频亚洲一级| 亚洲 国产精品 日韩| 国产成人精品一区二区视频| 久久成人性色生活片| 99久久精品国产高清一区二区| 久久成人综合网| 精品国产三级a| 国产成人女人在线视频观看| 中文字幕一区二区三区精彩视频| 国产不卡精品一区二区三区| 亚洲精品中文一区不卡| 欧美a级大片| 日本特黄特黄aaaaa大片 | 毛片高清| 中文字幕一区二区三区 精品| 欧美大片毛片aaa免费看| 久久99中文字幕| 午夜欧美成人香蕉剧场| 一级毛片视频免费| 91麻豆精品国产片在线观看| 国产不卡福利| 香蕉视频亚洲一级| 99久久精品国产麻豆| 国产91素人搭讪系列天堂| 午夜激情视频在线观看| 午夜久久网| 999精品在线| 国产一区二区精品在线观看| 精品国产一级毛片| 亚洲精品中文字幕久久久久久| 日本伦理片网站| 日韩免费在线| 精品视频免费在线| 免费国产一级特黄aa大片在线| a级精品九九九大片免费看| 日本免费乱理伦片在线观看2018| 韩国毛片基地| 91麻豆精品国产自产在线| 毛片的网站| 久久精品欧美一区二区| 免费国产在线视频| 免费的黄视频| 韩国三级视频网站| 精品国产一级毛片| 国产成人啪精品| 国产美女在线一区二区三区| 国产亚洲免费观看| 99色视频在线| 久久成人综合网| 国产不卡精品一区二区三区| 韩国三级香港三级日本三级la | 91麻豆精品国产自产在线观看一区| 九九干| 黄视频网站在线看| 国产伦精品一区二区三区无广告| 四虎影视库| 亚洲精品永久一区| 久久精品免视看国产成人2021| 久久福利影视| 日本伦理网站| 黄色免费三级| 久久成人综合网| 日韩av片免费播放| 国产精品自拍在线| 国产网站免费视频| 亚洲wwwwww| 精品国产一级毛片| 你懂的国产精品| 美女免费精品高清毛片在线视| 国产视频一区二区在线观看| 精品国产亚洲人成在线| 日本特黄特黄aaaaa大片| 国产原创视频在线| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产视频网站在线观看| 四虎影视久久久免费| 精品国产一区二区三区免费 | 亚欧成人乱码一区二区| 夜夜操网| 国产极品精频在线观看| 日韩欧美一二三区| 欧美a级大片| 国产麻豆精品视频| 欧美激情一区二区三区视频高清| 欧美a级片视频| 91麻豆精品国产高清在线| 99久久网站| 日本特黄特色aaa大片免费| 91麻豆精品国产自产在线| 精品国产一区二区三区久久久蜜臀 | 久久国产精品自线拍免费| 四虎久久精品国产| 日本在线www| 国产欧美精品| 日韩免费在线视频| 国产网站在线| 精品久久久久久免费影院| 黄色福利片| 精品国产香蕉伊思人在线又爽又黄| 成人影视在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 中文字幕一区二区三区精彩视频| 国产一区二区精品久| 你懂的日韩| 国产一区二区精品久久91| 日韩一级黄色| 日本伦理片网站| 免费的黄视频| 欧美爱色| 精品在线免费播放| 国产原创中文字幕| 高清一级做a爱过程不卡视频| 日本免费乱人伦在线观看| 国产91素人搭讪系列天堂| 黄视频网站在线观看| 毛片高清| 精品久久久久久综合网| 久久久久久久久综合影视网| 欧美一区二区三区性| 国产伦精品一区二区三区无广告| 欧美国产日韩一区二区三区| 国产成人精品综合久久久| 91麻豆国产福利精品| 久久99爰这里有精品国产| 天天色成人网| 99热精品在线| 欧美爱色| 国产精品自拍在线| 精品在线观看一区| 欧美一级视频高清片| 日韩男人天堂| 二级片在线观看| 国产欧美精品午夜在线播放| 国产极品精频在线观看| 久久精品成人一区二区三区| 毛片的网站| 国产成人女人在线视频观看| 久久国产精品自由自在| 国产精品自拍在线| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 中文字幕一区二区三区精彩视频| 成人免费一级纶理片|