MySQL什麼是InnoDB檢查點?
來源:DBA爛筆頭
瞭解什麼是InnoDB檢查點,以及它們如何與修改頁面的重新整理互動。
檢查點描述了將修改後的資料同步到磁碟的過程。當您修改InnoDB表中的資料時,InnoDB儲存引擎會更改記憶體中的資料innodb_buffer_pool_size指示InnoDB可以為此使用多少記憶體)。當您提交事務時,InnoDB儲存引擎必須將您的事務記錄在磁碟上。這將寫入重做日誌檔案。這些日誌檔案在磁碟上的大小是固定的(由innodb_log_file_size和innodb_log_files_in_group設定)。
如果75%已滿,那麼InnoDB必須將記憶體中已修改的資料同步到磁碟,以保持資料完整性。這被稱為非同步檢查點,它只阻塞執行寫操作的單個執行緒。如果執行緒達到85 %, InnoDB就會使用同步檢查點來阻塞所有執行緒,直到執行緒完成。
InnoDB實際上使用了一種“模糊”檢查點策略,這意味著修改後的資料不會一次寫入磁碟(這可能需要一段時間,並且會阻止使用者訪問InnoDB表),而是以小塊的方式進行同步。這是透過後臺重新整理完成的,其中一部分是自適應重新整理,它根據剩餘的日誌空間量改變其工作速率。延遲寫頁面是好的,因為這允許有更長的時間讓另一個操作可能改變同一頁面上的某些內容,從而潛在地減少頁面寫的總數。
日誌檔案越大,InnoDB需要檢查點或進行普通頁面重新整理的頻率就越低。這提高了執行時效能,因為它減少了磁碟I/O。但是,在5.5版之前,如果伺服器崩潰,較大的日誌檔案可能會將恢復時間增加到不可接受的水平,因為InnoDB必須讀取日誌檔案並恢復自上一個檢查點以來的所有更改。5.5版不再使用相同的恢復邏輯,因此您不再需要人為減少InnoDB日誌檔案的大小來限制恢復時間。沒有辦法力InnoDB的一個檢查站。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70027826/viewspace-2991737/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL InnoDB檢查點機制MySql
- MySql 什麼是檢視MySql
- MySQL中MyISAM為什麼比InnoDB查詢快MySql
- MySQL 中 MyISAM 中的查詢為什麼比 InnoDB 快?MySql
- mysql浮點型別是什麼MySql型別
- MySQL的MyISAM和InnoDB引擎的主要區別是什麼?MySql
- 什麼是mysql資料庫?MySQL的特點有哪些?MySql資料庫
- MySQL中myisam和innodb有什麼差異?MySql
- MySQL: InnoDB 還是 MyISAM?MySql
- MySQL 5.7 查詢InnoDB鎖表MySql
- Jtti:mysql主從同步的優點和缺點是什麼JttiMySql主從同步
- mysql字首索引是什麼MySql索引
- mysql中是什麼意思?MySql
- 全域性檢查點和增量檢查點
- SQLJ是什麼?優點?SQL
- MySQL資料庫的優勢和特點是什麼?MySQL學習MySql資料庫
- Oracle 檢查點佇列與增量檢查點Oracle佇列
- 全域性檢查點和增量檢查點(zt)
- 什麼是海外伺服器?它的優點是什麼?伺服器
- 什麼是敏捷開發?它有什麼特點敏捷
- 原生IP是什麼意思?有什麼亮點?
- 什麼是資料庫檢視?資料庫
- 【MySQL】究竟什麼是MVCC呢?MySqlMVC
- mysql中的“=”是什麼意思MySql
- mysql唯一索引是什麼MySql索引
- MySQL的半同步是什麼?MySql
- MYSQL中的COLLATE是什麼?MySql
- Oracle完全檢查點和增量檢查點詳解Oracle
- 【TUNE_ORACLE】Oracle檢查點(二)檢查點效能Oracle
- MySQL InnoDB設定死鎖檢測的方法MySql
- mysql InnoDB鎖等待的檢視及分析MySql
- 【MYSQL】Mysql常用檢查sqlMySql
- MySQL、NoSQL分別是什麼?有什麼區別?MySql
- mysql啟動不了是什麼原因MySql
- mysql中auto_increment是什麼MySqlREM
- MySQL中information_schema是什麼MySqlORM
- 網路安全中什麼是APT攻擊?主要特點是什麼?APT
- 什麼是閉包?有哪些使用場景?優缺點是什麼?