日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

数据库的binlog、redolog以及undolog

發布時間:2025/3/19 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库的binlog、redolog以及undolog 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. binlog

1.1 binlog:記錄了數據庫表結構和表數據的變更(update/delete/insert/create/truncate),不記錄select操作,存儲的是邏輯操作,如“為id=3這一行的count字段加1”。

1.2?binlog的作用:①用戶檢索的數據是從搜索引擎得到的,但是我們修改數據是直接操作的數據庫,所以數據庫的變更要同步到搜索引擎。通過監聽binlog的變更,可以對搜索引擎進行更新。②對于一主多從的架構,從機的數據復制通過binlog實現;③數據庫的數據被清空,可以通過binlog對數據進行恢復。

2. redolog

2.1 redolog:MySQL的基本存儲結構是頁,所以mysql在修改數據時,先把數據所在的頁加載到內存并修改,是物理操作,然后會寫入redo log(保存的是在某個數據頁做了什么修改)。

2.2 redolog的作用:如果內存把數據改了,但是還沒異步寫入磁盤(如果每次都立馬寫入磁盤,那么速度很慢),此時數據庫掛了,那么這次數據就丟失了。所以為了避免這種情況,每次內存操作數據后,都在redolog中記錄(順序IO,寫入速度快),以便之后恢復(redolog體積小,恢復速度快)。

2.3 在事務提交時,是兩階段提交(2PC)。如果SQL語句都執行成功,那么完成prepare過程;然后寫入binlog,接著寫入redolog,完成提交。

3. undolog

3.1 undolog:①可以用于MVCC,②可以使用undolog回滾。

3.2 redolog是針對數據頁的修改,且是前滾操作,物理操作;而undolog是將行記錄回滾,針對的是數據版本,邏輯操作。

4. 寫入磁盤策略:通過sync_binlog控制,0表示不強制刷盤,系統自行判斷;1表示每次提交事務都寫入磁盤;n表示提交n個事務再寫入磁盤。

總結

以上是生活随笔為你收集整理的数据库的binlog、redolog以及undolog的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。