中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

innodb_flush_log_at_trx_commit配置

發布時間:2020-08-10 23:21:35 來源:網絡 閱讀:700 作者:baishuchao 欄目:數據庫

配置項說明

文檔寫的很清楚:

0

如果innodb_flush_log_at_trx_commit的值為0,log buffer每秒就會被刷寫日志文件到磁盤,提交事務的時候不做任何操作。

1

當設為默認值1的時候,每次提交事務的時候,都會將log buffer刷寫到日志。

2

如果設為2,每次提交事務都會寫日志,但并不會執行刷的操作。每秒定時會刷到日志文件。要注意的是,并不能保證100%每秒一定都會刷到磁盤,這要取決于進程的調度。

默認值1是為了保證完整的ACID。當然,你可以將這個配置項設為1以外的值來換取更高的性能,但是在系統崩潰的時候,你將會丟失1秒的數據。設為0的話,mysqld進程崩潰的時候,就會丟失最后1秒的事務。設為2,只有在操作系統崩潰或者斷電的時候才會丟失最后1秒的數據。InnoDB在做恢復的時候會忽略這個值。

刷寫的概念

刷寫其實是兩個操作,刷(flush)和寫(write),區分這兩個概念(兩個系統調用)是很重要的。在大多數的操作系統中,把Innodb的log buffer(內存)寫入日志(調用系統調用write),只是簡單的把數據移到操作系統緩存中,操作系統緩存同樣指的是內存。并沒有實際的持久化數據。

所以,通常設為0和2的時候,在崩潰或斷電的時候會丟失最后一秒的數據,因為這個時候數據只是存在于操作系統緩存。之所以說“通常”,可能會有丟失不只1秒的數據的情況,比如說執行flush操作的時候阻塞了。

總結

設為1當然是最安全的,但性能頁是最差的(相對其他兩個參數而言,但不是不能接受)。如果對數據一致性和完整性要求不高,完全可以設為2,如果只最求性能,例如高并發寫的日志服務器,設為0來獲得更高性能。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

三门峡市| 荔波县| 化德县| 潍坊市| 桦甸市| 永清县| 独山县| 阿拉善左旗| 延寿县| 平远县| 丰镇市| 嘉祥县| 伊吾县| 额尔古纳市| 同仁县| 阜新市| 彭泽县| 湖北省| 阳东县| 三明市| 南阳市| 惠安县| 虎林市| 西宁市| 安宁市| 沙坪坝区| 新干县| 南皮县| 元江| 德钦县| 汨罗市| 涞源县| 广东省| 怀柔区| 南丹县| 林甸县| 普安县| 安新县| 商水县| 白朗县| 清苑县|