MySQL Shell 外掛程式可用於包含註冊為 MySQL Shell 報表的函式(請參閱第 10.1 節「使用 MySQL Shell 報表」),以及屬於使用者定義 MySQL Shell 全域物件提供的擴充物件成員的函式(請參閱第 10.2 節「新增擴充物件至 MySQL Shell」)。單一外掛程式可以包含並註冊多個函式,並且可以包含報表和擴充物件成員的混合。由 MySQL Shell 外掛程式註冊為報表或擴充物件成員的函式,會在 MySQL 完成啟動時立即可用。
MySQL Shell 外掛程式是一個包含適合語言的初始化腳本(init.js
或 init.py
檔案)的資料夾。初始化腳本是外掛程式的進入點。外掛程式只能包含一種語言的程式碼,因此如果您要建立一個擴充物件,其中包含以 Python 定義的成員和以 JavaScript 定義的成員,則必須將這些成員儲存為個別適合語言的外掛程式。
若要讓 MySQL Shell 外掛程式在啟動時自動載入,其資料夾必須位於 MySQL Shell 使用者組態路徑中的 plugins
資料夾下。MySQL Shell 會在此位置搜尋任何初始化腳本。MySQL Shell 會忽略 plugins
位置中任何名稱以點 (.) 開頭的資料夾,否則您為外掛程式資料夾使用的名稱並不重要。
plugins
資料夾的預設路徑在 Unix 上是 ~/.mysqlsh/plugins
,在 Windows 中則是 %AppData%\MySQL\mysqlsh\plugins
。使用者組態路徑可以在所有平台上透過定義環境變數 MYSQLSH_USER_CONFIG_HOME
來覆寫。此變數的值會取代 Windows 上的 %AppData%\MySQL\mysqlsh\
或 Unix 上的 ~/.mysqlsh/
。
當載入外掛程式時發現錯誤時,會顯示警告,並且錯誤詳細資訊會在 MySQL Shell 應用程式記錄中提供。若要查看載入程序的更多詳細資訊,請在啟動 MySQL Shell 時使用 --log-level=debug
選項。
當載入 MySQL Shell 外掛程式時,下列物件會以全域變數的形式提供
內建全域物件
shell
、dba
和util
。Shell API 主要模組
mysql
。X DevAPI 主要模組
mysqlx
。AdminAPI 主要模組
dba
。