MySQL Shell 9.0  /  ...  /  持久化擴充物件

10.2.3 持久化擴充物件

定義和註冊擴充物件的指令碼必須具有 .js (針對 JavaScript 程式碼) 或 .py (針對 Python 程式碼) 的檔案副檔名,才能與指令碼所用的語言相符。檔案副檔名不區分大小寫。

持久化擴充物件的偏好方式是將其新增至 MySQL Shell 外掛程式。當 MySQL Shell 啟動時,會自動載入外掛程式和外掛程式群組,而且它們定義和註冊的函式會立即提供。在 MySQL Shell 外掛程式中,包含初始化指令碼的檔案名稱必須為 init.jsinit.py (視語言而定)。一個外掛程式只能包含一種語言的程式碼,因此,如果您使用以 Python 定義的成員和以 JavaScript 定義的成員混合建立擴充物件,則必須將成員儲存為個別適用於語言的外掛程式。如需使用 MySQL Shell 外掛程式的指示,請參閱第 10.3 節,「MySQL Shell 外掛程式」

或者,包含擴充物件的指令碼可以直接儲存在 MySQL Shell 使用者設定路徑中的 init.d 資料夾中。當 MySQL Shell 啟動時,會自動處理 init.d 資料夾中找到的所有檔案副檔名為 .js.py 的檔案,並提供它們註冊的函式。(在此位置,檔案名稱對 MySQL Shell 而言並不重要。) 在 Unix 上,預設的 MySQL Shell 使用者設定路徑為 ~/.mysqlsh/,在 Windows 上則為 %AppData%\MySQL\mysqlsh\。在所有平台上,都可以透過定義環境變數 MYSQLSH_USER_CONFIG_HOME 來覆寫使用者設定路徑。