伺服器外掛程式實作包含數個組件。
SQL 陳述式
INSTALL PLUGIN在mysql.plugin資料表中註冊外掛程式,並載入外掛程式碼。UNINSTALL PLUGIN從mysql.plugin資料表取消註冊外掛程式,並解除載入外掛程式碼。用於全文索引建立的
WITH PARSER子句會將全文剖析器外掛程式與指定的FULLTEXT索引建立關聯。SHOW PLUGINS顯示伺服器外掛程式的相關資訊。
命令列選項和系統變數
--plugin-load選項可讓外掛程式在伺服器啟動時載入。plugin_dir系統變數會指出必須安裝所有外掛程式的目錄位置。此變數的值可在伺服器啟動時以--plugin_dir=選項指定。mysql_config --plugindir 會顯示預設外掛程式目錄路徑名稱。dir_name
如需外掛程式載入的其他資訊,請參閱安裝和解除安裝外掛程式。
外掛程式相關資料表
INFORMATION_SCHEMA.PLUGINS資料表包含外掛程式資訊。mysql.plugin資料表列出每個使用INSTALL PLUGIN安裝且外掛程式使用所需的外掛程式。對於新的 MySQL 安裝,此資料表會在安裝過程中建立。
用戶端外掛程式實作較為簡單
對於
mysql_options()C API 函式,MYSQL_DEFAULT_AUTH和MYSQL_PLUGIN_DIR選項可讓用戶端程式載入驗證外掛程式。有一些 C API 函式可讓您管理用戶端外掛程式。
若要檢查 MySQL 如何實作外掛程式,請參閱 MySQL 原始碼發行版中的下列原始檔
在
include/mysql目錄中,plugin.h會公開公用外掛程式 API。任何想要撰寫外掛程式庫的人都應該檢查此檔案。plugin_檔案提供與特定類型外掛程式相關的其他資訊。xxx.hclient_plugin.h包含特定於用戶端外掛程式的資訊。在
sql目錄中,sql_plugin.h和sql_plugin.cc包含內部外掛程式實作。sql_acl.cc是伺服器使用驗證外掛程式的地方。外掛程式開發人員不需要查閱這些檔案。對於那些想要進一步了解伺服器如何處理外掛程式的人,這些檔案可能會很有趣。在
sql-common目錄中,client_plugin.h會實作 C API 用戶端外掛程式函式,而client.c則實作用戶端驗證支援。外掛程式開發人員不需要查閱這些檔案。對於那些想要進一步了解伺服器如何處理外掛程式的人,這些檔案可能會很有趣。