元件必須先載入到伺服器中才能使用。MySQL 支援在執行階段手動載入元件,以及在伺服器啟動期間自動載入元件。
當元件載入時,有關它的資訊會如第 7.5.2 節「取得元件資訊」中所述提供。
INSTALL COMPONENT
和 UNINSTALL COMPONENT
SQL 陳述式可啟用元件的載入和卸載。例如
INSTALL COMPONENT 'file://component_validate_password';
UNINSTALL COMPONENT 'file://component_validate_password';
載入器服務會處理元件載入和卸載,並在 mysql.component
系統資料表中註冊載入的元件。
用於元件操作的 SQL 陳述式會影響伺服器操作和 mysql.component
系統資料表,如下所示
INSTALL COMPONENT
將元件載入伺服器。這些元件會立即啟用。載入器服務也會在mysql.component
系統資料表中註冊載入的元件。對於後續的伺服器重新啟動,載入器服務會在啟動順序期間載入mysql.component
中列出的任何元件。即使伺服器使用--skip-grant-tables
選項啟動,也會發生這種情況。選用的SET
子句允許您在安裝元件時設定元件系統變數值。UNINSTALL COMPONENT
會停用元件,並將它們從伺服器卸載。載入器服務也會從mysql.component
系統資料表取消註冊這些元件,以便伺服器在後續重新啟動的啟動順序期間不再載入它們。
與伺服器外掛程式的對應 INSTALL PLUGIN
陳述式相比,用於元件的 INSTALL COMPONENT
陳述式提供顯著的優勢,即不需要知道任何特定於平台的檔案名稱尾碼來命名元件。這表示可以在各個平台上統一執行給定的 INSTALL COMPONENT
陳述式。
安裝元件時,也可能會自動安裝相關的可載入函式。如果這樣,則在卸載元件時也會自動卸載這些函式。