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

主頁 > 知識庫 > MySQL 日志相關知識總結

MySQL 日志相關知識總結

熱門標簽:外呼系統打電話上限是多少 曲靖移動外呼系統公司 武漢網絡外呼系統服務商 電話外呼系統改號 百應電話機器人優勢 南昌三維地圖標注 怎樣在地圖標注銷售區域 地圖標注費用是多少 啥是企業400電話辦理

數據庫中用于存儲數據的文件稱為data file,日志文件稱為log file。此外,如果每次讀寫都是直接訪問磁盤,性能很差,所以數據庫是有緩存的,數據緩存是data buffer,日志緩存log buffer。

sql執行順序

當我們執行一條更新語句時,比如 update table set c=c+1 where id = 2,執行順序如下:

  • 執行器通過存儲引擎獲取id=2的行記錄。如果id=2的行記錄所在的數據頁已經在內存中,則直接返回;否則,需要從磁盤讀取數據
  • 執行器拿到返回的行數據,把字段c的值+1,得到新的行數據,然后調用存儲引擎接口寫入行數據
  • 引擎把這行數據更新到內存,同時將這個更新操作記錄到redo log里面,此時redo log處于prepare狀態。然后告訴執行器執行完成,隨時可以提交事務
  • 執行器生成這個操作的bin log,并把bin log寫入磁盤
  • 執行器調用引擎的提交事務接口,引擎把剛剛寫入的redo log改成commit狀態,更新完成

補充:MySQL的基本存儲結構是頁(記錄都存在頁里邊),所以MySQL是先把這條記錄所在的頁找到,然后把該頁加載到內存中,再修改對應的記錄。

bin log

是什么

bin log稱為歸檔日志、二進制日志,屬于MySQL Server層面的,用于記錄數據庫表結構和表數據的變更,可以簡單理解為存儲每條變更的sql語句,比如insert、delete、update(當然,不僅是sql,還有事務id,執行時間等等)。

什么時候產生

事務提交的時候,一次性將事務中的sql語句按照一定格式記錄到bin log

有什么用

主要有兩個作用:主從復制和恢復數據

  • 目前大部分數據庫架構都是一主多從,從服務器通過訪問主服務器的bin log,保證數據一致性
  • bin log記錄數據庫的變更,可以通過它恢復數據

什么時候落盤

區分innodb_flush_log_at_trx_commit和sync_binlog

​ 二進制日志取決于sync_binlog參數

  • 0:事務提交后,由操作系統決定什么時候把緩存刷新到磁盤(性能最好,安全性最差)
  • 1:每提交一次事務,調用一次fsync將緩存寫入到磁盤(安全性最好,性能最差)
  • n:當提交n次事務后,調用一次fsync將緩存寫入到磁盤

文件記錄模式

bin log有三種文件記錄模式,分別是row、statement、mixed

  • row(row-based replication,PBR):記錄每一行數據的修改情況

優點:能夠清楚記錄每行數據修改細節,能夠完全保證主從數據一致性
缺點:批量操作時會產生大量的日志,比如alter table

  • statement:記錄每條修改數據的sql,可認為sql語句復制

優點:日志數據量小,減少磁盤IO,提高存儲和恢復速度
缺點:在某些情況下會出現主從不一致,比如sql語句中包含**now()**等函數

  • mixed:上面兩種模式的混合,MySQL會根據sql語句選擇寫入模式,一般使用statement模式保存bin log,對于statement模式無法復制的操作,使用row模式保存bin log。

redo log

是什么

redo log稱為重做日志,屬于InnoDB存儲引擎層的日志,記錄物理頁的修改信息,而不是某一行或幾行修改成什么樣

什么時候產生

事務開始,就會寫入redo log。redo log寫入到磁盤并不是隨著事務提交才寫入,而是在事務執行過程中,就已經寫入到磁盤

有什么用

可用于恢復數據。redo log是在事務開始后就寫入到磁盤,且是順序IO,寫入速度較快。如果服務器突然掉電,InnoDB引擎會使用redo log把數據庫恢復到掉電前的時刻,保證數據的完整性

什么時候落盤

InnoDB先把日志寫到緩沖區(log buffer),然后再把日志從log buffer刷到os buffer,最后調用文件系統的fsync函數將日志刷新到磁盤。重做日志寫入時機由參數innodb_flush_log_at_trx_commit決定

  • 0:每秒一次,把log buffer寫入os buffer,并調用fsync刷到磁盤
  • 1:每次提交事務時,把log buffer寫入os buffer,并調用fsync刷到磁盤
  • 2:每次提交事務時,只是寫入到os buffer,然后每秒一次調用fsync將日志刷新到磁盤

一般取值為2,因為即使MySQL宕機,數據也沒有丟失。只有整個服務器掛了,才損失1秒的數據

bin log VS redo log

看了以上的介紹,感覺bin log和redo log很像,都是記錄數據變更,可用于恢復。其實,它們還是有明顯區別的。

  • bin log屬于MySQL Server層面的,redo log屬于InnoDB存儲引擎層面
  • bin log是邏輯日志,記錄的是sql語句的原始邏輯;redo log是物理日志,記錄的是物理頁面更新的內容
  • bin log是追加寫,文件達到限制后會更換下個文件,不會覆蓋;redo log是循環寫,文件大小固定,寫滿就重頭開始寫,覆蓋原來的內容
  • bin log作用是主從復制和恢復數據,當數據庫被刪除、或者從庫同步主庫數據時,由于bin log記錄變更數據的sql,所以可通過bin log恢復。而redo log作用是持久化,當發生服務器宕機或者掉電等情況,數據丟失,可以通過redo log恢復。
  • bin log是提交事務時才寫入磁盤,而redo log在開啟事務時,就開始寫入到磁盤

如果整個數據庫被刪除,可以通過redo log恢復嗎?

不行!因為redo log側重點是保存某次事務的數據變更,當內存中的數據刷到磁盤后,redo log的數據其實已經沒有參考價值。此外,redo log會覆蓋歷史數據,也不可能通過它來恢復所有數據。

undo log

詳細分析MySQL事務日志

是什么

undo log稱為回滾日志,屬于InnoDB存儲引擎層,是邏輯日志,記錄每行數據。當我們變更數據時,就會產生undo log,可以認為insert一條數據,undo log會記錄一條對應的delete日志,反之亦然。

什么時候產生

在事務開始前,將當前版本生成undo log

有什么用

主要作用:提供回滾和多版本并發控制(MVCC)

  • 回滾:當需要rollback時,從undo log的邏輯記錄讀取相應的內容進行回滾
  • MVCC:undo log記錄中存儲的是舊版本數據,當一個事務需要讀取數據時,會順著undo鏈找到滿足其可見性的記錄

以上就是MySQL 日志相關知識總結的詳細內容,更多關于MySQL 日志的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • MySQL 一則慢日志監控誤報的問題分析與解決
  • MySQL慢查詢日志的作用和開啟
  • MySQL 慢查詢日志的開啟與配置
  • 詳解監聽MySQL的binlog日志工具分析:Canal
  • 詳解MySQL 重做日志(redo log)與回滾日志(undo logo)
  • MySQL Aborted connection告警日志的分析
  • 詳解 Mysql 事務和Mysql 日志
  • 關于Anemometer圖形化顯示MySQL慢日志的工具搭建及使用的詳細介紹
  • MySQL5.7慢查詢日志時間與系統時間差8小時原因詳解
  • mysql將bin-log日志文件轉為sql文件的方法

標簽:滄州 甘南 吉林 荊州 黑河 資陽 隨州 錦州

巨人網絡通訊聲明:本文標題《MySQL 日志相關知識總結》,本文關鍵詞  MySQL,日志,相關,知識,總結,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL 日志相關知識總結》相關的同類信息!
  • 本頁收集關于MySQL 日志相關知識總結的相關信息資訊供網民參考!
  • 推薦文章
    中文字幕97| 亚洲www美色| 久久99青青久久99久久| 999久久狠狠免费精品| 色综合久久天天综合| 日本免费乱人伦在线观看| 免费一级片网站| 一级女人毛片人一女人| 久久99这里只有精品国产| 国产伦精品一区二区三区无广告 | 欧美一区二区三区性| 你懂的日韩| 亚洲第一页色| 人人干人人插| 国产a免费观看| 99色视频在线观看| 91麻豆爱豆果冻天美星空| 成人影院一区二区三区| 日韩在线观看免费| 午夜在线影院| 毛片高清| 国产高清在线精品一区a| 欧美另类videosbestsex| 日韩免费在线| 国产成a人片在线观看视频 | 91麻豆精品国产高清在线| 韩国三级视频网站| 成人免费网站视频ww| 国产麻豆精品免费视频| 国产网站免费在线观看| 日本伦理片网站| 亚洲第一色在线| 日韩男人天堂| 成人免费观看的视频黄页| 国产韩国精品一区二区三区| 你懂的日韩| 成人免费网站久久久| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 日本伦理网站| 亚洲爆爽| 精品久久久久久中文字幕一区| 国产伦精品一区二区三区无广告| 国产国产人免费视频成69堂| 欧美激情一区二区三区视频| 午夜在线影院| 99色视频在线观看| 韩国毛片免费| 欧美1区2区3区| 国产欧美精品午夜在线播放| 中文字幕97| 99色视频在线观看| 亚州视频一区二区| 日韩一级黄色大片| 99色视频| 国产一区二区精品久久91| 国产国产人免费视频成69堂| 国产精品1024在线永久免费 | 黄视频网站在线观看| 国产视频网站在线观看| 亚洲第一视频在线播放| 国产成人精品一区二区视频| 精品国产一区二区三区久久久蜜臀 | 国产91精品一区| 九九九网站| 深夜做爰性大片中文| 国产不卡在线观看视频| 可以免费在线看黄的网站| 国产原创中文字幕| 麻豆午夜视频| 青青久热| 日韩免费在线视频| 九九九在线视频| 免费的黄视频| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 色综合久久手机在线| 黄视频网站免费看| 国产精品1024在线永久免费 | 欧美另类videosbestsex| 欧美日本国产| 高清一级淫片a级中文字幕| 国产视频久久久| 国产一区免费在线观看| 国产亚洲免费观看| 91麻豆精品国产自产在线| 99久久网站| 你懂的在线观看视频| 欧美电影免费看大全| 成人av在线播放| 久久99爰这里有精品国产| 精品视频在线看 | 精品毛片视频| 日韩免费在线视频| 91麻豆国产| 精品国产亚洲人成在线| 国产麻豆精品| 亚洲第一色在线| 91麻豆精品国产综合久久久| 国产一区免费在线观看| 免费国产一级特黄aa大片在线| 精品久久久久久中文| 国产极品白嫩美女在线观看看| 精品国产一区二区三区久久久蜜臀 | 人人干人人插| 精品久久久久久中文字幕一区| 精品国产香蕉伊思人在线又爽又黄| 999精品视频在线| 久久国产精品只做精品| 可以在线看黄的网站| 精品国产一级毛片| 国产成人啪精品视频免费软件| 国产成人女人在线视频观看| 色综合久久天天综线观看| 日韩在线观看网站| 国产一区二区高清视频| 你懂的在线观看视频| 精品国产一区二区三区国产馆| 色综合久久手机在线| 精品视频免费看| 欧美爱爱动态| 亚洲第一视频在线播放| 天天色成人| 日韩女人做爰大片| 夜夜操网| 亚洲第一页乱| 四虎影视精品永久免费网站| 久久精品免视看国产明星 | 亚洲精品中文一区不卡| 精品视频在线观看一区二区| 免费国产在线观看不卡| 韩国三级一区| 亚洲 激情| 欧美大片一区| 国产原创中文字幕| 黄色短视屏| 成人影院一区二区三区| 成人高清免费| 日韩avdvd| 日韩中文字幕一区| 天天做人人爱夜夜爽2020| 国产成人精品影视| 黄色福利片| 国产a一级| 九九九在线视频| 日韩中文字幕一区二区不卡| 天天色成人网| 久久99中文字幕久久| 欧美国产日韩在线| 精品视频在线观看免费| 可以免费看污视频的网站| 欧美一区二区三区在线观看| 成人在免费观看视频国产| 国产91精品系列在线观看| 欧美a免费| 色综合久久天天综合绕观看| 久久久成人网| 中文字幕一区二区三区精彩视频| 精品视频免费观看| 精品视频免费观看| 午夜在线影院| 精品国产三级a| 一级毛片看真人在线视频| 毛片的网站| 99热精品在线| 天天色成人网| 国产精品1024永久免费视频| 九九精品影院| 久久国产影院| 二级片在线观看| 青草国产在线观看| 国产网站在线| 国产一区二区精品久久91| 国产视频一区二区三区四区| 日本伦理片网站| 精品在线观看国产| 成人影视在线播放| 欧美a免费| 国产一区二区精品| 免费毛片基地| 欧美激情一区二区三区视频 | 国产一区免费在线观看| 麻豆午夜视频| 精品久久久久久综合网| 久久久久久久免费视频| 色综合久久天天综合绕观看| 国产不卡在线看| 久久成人性色生活片| 91麻豆精品国产自产在线观看一区 | 国产成人啪精品视频免费软件| 日韩女人做爰大片| 欧美激情一区二区三区视频高清| 欧美国产日韩精品| 免费一级生活片| 国产91视频网| 成人影视在线播放| 九九九网站| 亚欧成人乱码一区二区| 免费国产一级特黄aa大片在线| 久久国产一久久高清| 日韩中文字幕在线亚洲一区| 国产伦精品一区二区三区无广告|