文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式 Letter) - 39.9Mb
PDF (A4) - 40.0Mb
Man 頁面 (TGZ) - 258.5Kb
Man 頁面 (Zip) - 365.5Kb
資訊 (Gzip) - 4.0Mb
資訊 (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  配置背景 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」