文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  設定背景 InnoDB I/O 執行緒的數量

17.8.5 設定背景 InnoDB I/O 執行緒的數量

InnoDB 使用背景執行緒來處理各種 I/O 要求。您可以使用 innodb_read_io_threadsinnodb_write_io_threads 配置參數來設定背景執行緒的數量,這些執行緒用於處理資料頁面的讀取和寫入 I/O。這些參數分別表示用於讀取和寫入要求的背景執行緒數量。它們在所有支援的平台上都有效。您可以在 MySQL 選項檔案(my.cnfmy.ini)中設定這些參數的值;您無法動態變更值。innodb_read_io_threads 的預設值是系統上可用的邏輯處理器數量除以 2,預設最小值為 4innodb_write_io_threads 的預設值為 4。這兩個選項的允許值範圍都是 1-64

這些配置選項的目的是使 InnoDB 在高階系統上更具擴展性。每個背景執行緒最多可以處理 256 個擱置的 I/O 要求。背景 I/O 的主要來源是預讀要求。InnoDB 嘗試平衡傳入要求的負載,使大多數背景執行緒平均分擔工作。InnoDB 也嘗試將來自相同範圍的讀取要求分配給同一執行緒,以增加合併要求的機會。如果您擁有高階 I/O 子系統,並且在 SHOW ENGINE INNODB STATUS 輸出中看到超過 64 × innodb_read_io_threads 個擱置的讀取要求,您可以透過增加 innodb_read_io_threads 的值來提高效能。

在 Linux 系統上,InnoDB 預設使用非同步 I/O 子系統來執行資料檔案頁面的預讀和寫入請求,這會改變 InnoDB 背景執行緒處理這些類型 I/O 請求的方式。更多資訊,請參閱第 17.8.6 節「在 Linux 上使用非同步 I/O」

關於 InnoDB I/O 效能的更多資訊,請參閱第 10.5.8 節「最佳化 InnoDB 磁碟 I/O」