將資料庫引擎從 MyISAM 轉換為 InnoDB 之前,請先配置兩項 InnoDB 專屬的 MySQL 設定。這兩項設定為 innodb_buffer_pool_size 和 innodb_file_per_table。
innodb_buffer_pool_size
此設定控制可供 InnoDB 引擎擷取表格和索引資料的 RAM 數量,且必須在嘗試轉換之前完成配置。針對專用資料庫伺服器而言,建議的 InnoDB 緩衝區集區規模約為系統記憶體總數的 50 到 70%。不過,如果 Jamf Pro 資料庫伺服器同時託管 Tomcat,則在扣除已分配給 Tomcat 服務、作業系統以及伺服器上任何其他執行服務所佔的數量後,估算此值約為剩餘系統記憶體的 50 到 70%。
例如:假設伺服器同時執行 Tomcat 和 MySQL,其 RAM 總數為 16 GB,且已將 8 GB 分配給 Tomcat 服務及 4 GB 分配給系統和其他處理程序。原本總數剩餘 4 GB,因此預計會將 2 到 3 GB 分配給 InnoDB 緩衝區集區規模設定。
若要設定 innodb_buffer_pool_size,請執行下列命令:
jamf-pro database config set --innodb-buffer-pool-size <value>此命令可接受以 MB 或 GB 單位的值。例如:
jamf-pro database config set --innodb-buffer-pool-size 2048MB jamf-pro database config set --innodb-buffer-pool-size 2GBinnodb_file_per_table
此設定允許將資料和索引儲存到個別的 .ibd 檔案,以便進行壓縮和效能增強。在進行轉換前,必須將其設定為 true (布林值 1)。
- 若要將 innodb_file_per_table 設為 true,請執行下列命令:
jamf-pro database config set --innodb-file-per-table true - 執行下列命令以重新啟動 MySQL 服務:
jamf-pro database restart