牛刀小試MySQL--innodb_flush_log_at_trx_commit小結


參數名:innodb_flush_log_at_trx_commit
參數值:

  • 0 事務提交的時候,不會去刷日志緩存區,也不會立馬寫入至日志文件中。這種設置最危險。如果數據庫掛了且運氣不好,數據庫的最新的更新數據都會丟失,即使事務提交了,但丟失的事務一般是最近1秒內發生的。
  • 1 事務提交時,將日志緩存區中的日志寫入文件中,同時將這次寫入強制更新到磁盤文件中。保證數據安全性最強,但是數據庫的性能下降很多。
  • 2 事務提交寫入日志,但不去刷盤,刷盤操作由OS控制,只要操作系統不掛,數據庫服務掛了,也能保證提交的事務數據不丟失。

建議:

  • 一般在保證數據安全性和性能的權衡下,建議設置為2。

下圖,形象地簡單描述上列關系。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM