MySQL 配置InnoDB主執行緒I/O速率
配置InnoDB主執行緒I/O速率
InnoDB中的主執行緒是在後臺執行各種任務的執行緒。這些任務大多數都與I/O相關,比如從緩衝池重新整理髒頁,或者將更改從插入緩衝區寫入適當的二級索引。主執行緒試圖以不影響伺服器正常工作的方式執行這些任務。它試圖估計可用的空閒I/O頻寬,並調整其活動以利用這些空閒容量。從歷史上看,InnoDB已經使用了硬編碼值 100 IOPs(每秒輸入/輸出運算元)作為伺服器的總I/O容量。
innodb_io_capacity表示InnoDB可用的總I/O容量。該引數應該設定為系統每秒可以執行的I/O運算元。該值取決於您的系統配置。當設定innodb_io_capacity時,主執行緒會根據設定的值來估算後臺任務可用的I/O頻寬。將該值設定為100將恢復到原來的行為。
innodb_io_capacity可以設定為100或更大的任意值。預設值是200,這反映了典型的現代I/O裝置的效能要高於早期的MySQL。通常,前面的預設值100左右的值適合消費者級儲存裝置,比如高達7200 rpm的硬碟驅動器。更快的硬碟驅動器、RAID配置和ssd受益於更高的值。
innodb_io_capacity設定是所有緩衝池例項的總限制。當髒頁被重新整理時,innodb_io_capacity限制將在緩衝池例項中平均分配。更多資訊請參見innodb_io_capacity系統變數描述。
您可以在MySQL選項檔案(my.cnf或my.ini)中設定該引數的值,或者使用set GLOBAL命令動態更改它,該命令需要超級許可權
innodb_flush_sync配置選項會導致innodb_io_capacity設定在檢查點發生I/O突發時被忽略。Innodb_flush_sync預設開啟。
以前,InnoDB主執行緒還執行任何需要的清除操作。在MySQL 5.6.5及以上版本中,這些I/O操作被轉移到其他後臺執行緒,其數量由innodb_purge_threads配置選項控制。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26015009/viewspace-2886312/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL 配置後臺InnoDB I/O執行緒數MySql執行緒
- MySQL 配置InnoDB的併發執行緒MySql執行緒
- Redis篇:單執行緒I/O模型Redis執行緒模型
- MySQL:Innodb purge執行緒略解MySql執行緒
- MySQL:Innodb page clean 執行緒 (二) 解析MySql執行緒
- MySQL:Innodb page clean 執行緒 (一) 基礎MySql執行緒
- MySQL底層概述—3.InnoDB執行緒模型MySql執行緒模型
- node.js的非同步I/O、事件驅動、單執行緒Node.js非同步事件執行緒
- 保證執行緒在主執行緒執行執行緒
- MySQL 主從複製之多執行緒複製MySql執行緒
- 主佇列&主執行緒佇列執行緒
- QT 主執行緒子執行緒互相傳值QT執行緒
- MySQL 8.0 Reference Manual(讀書筆記73節--Thread Concurrency for InnoDB and I/O Threads)MySql筆記thread
- MySQL:一段innodb buffer instance和cleaner執行緒計算邏輯MySql執行緒
- MySQL_殺mysql執行緒MySql執行緒
- 模擬主執行緒等待子執行緒的過程執行緒
- 合理配置執行緒池執行緒
- springboot配置執行緒池使用多執行緒插入資料Spring Boot執行緒
- MySQL innodb引擎的事務執行過程MySql
- 主執行緒等待所有其他執行緒執行完畢,然後再繼續執行主執行緒的邏輯,有以下幾種方法可以實現:執行緒
- 執行SQL發生錯誤!錯誤:disk I/O errorSQLError
- MySQL之磁碟I/O過高排查MySql
- (MFC)子執行緒的資料如何傳遞給主執行緒中?執行緒
- MySQL InnoDB記憶體配置MySql記憶體
- MySQL 配置InnoDB清理排程MySql
- MySQL InnoDB頁面大小配置MySql
- mysql 5.7 執行緒阻塞處理MySql執行緒
- 多執行緒C++更新MYSQL執行緒C++MySql
- mysql後臺執行緒詳解MySql執行緒
- MySQL執行緒狀態詳解MySql執行緒
- 多執行緒------執行緒與程式/執行緒排程/建立執行緒執行緒
- JVM程式用一個主執行緒來執行main()方法JVM執行緒AI
- MySQL中介軟體之ProxySQL(5):執行緒、執行緒池、連線池MySql執行緒
- new Handler().postDelayed(new Runnable())是否執行在主執行緒?執行緒
- MySQL InnoDB日誌檔案配置MySql
- MySQL InnoDB Undo表空間配置MySql
- MySQL 配置InnoDB為只讀操作MySql
- MySQL 配置InnoDB變更緩衝MySql