當 MySQL Shell 在 JavaScript 或 Python 模式下啟動時,以及當您第一次切換到 JavaScript 或 Python 模式時,MySQL Shell 會搜尋要執行的啟動腳本。啟動腳本是 JavaScript 或 Python 特定的腳本,其中包含當 MySQL Shell 首次進入相應語言模式時要執行的指令。啟動腳本可讓您以任何以下方式自訂 JavaScript 或 Python 程式碼執行環境
為 Python 或 JavaScript 模組新增額外的搜尋路徑。
定義全域函數或變數。
透過 JavaScript 或 Python 執行任何其他可能的初始化。
當您在 JavaScript 或 Python 模式下啟動或重新啟動 MySQL Shell 時,以及當 MySQL Shell 執行時第一次變更為這些模式中的另一種時,會載入相關的啟動腳本。在此之後,MySQL Shell 不會再次搜尋啟動腳本,因此如果您已進入相關模式,則實作對啟動腳本的更新需要重新啟動 MySQL Shell。當 MySQL Shell 在 SQL 模式下啟動或您切換到該模式時,不會載入任何啟動腳本。
啟動腳本是選擇性的,如果您想要使用它們進行自訂,則可以建立它們。啟動腳本的名稱必須如下所示
對於 JavaScript 模式:
mysqlshrc.js
對於 Python 模式:
mysqlshrc.py
您可以將啟動腳本放置在下面列出的任何位置。MySQL Shell 會依列出的順序,搜尋所有指定路徑,以尋找檔案名稱為 mysqlshrc
的啟動腳本,以及符合正在初始化的指令碼模式的副檔名(如果 MySQL Shell 在未指定任何語言模式的情況下啟動,則預設為 .js
)。請注意,MySQL Shell 會依找到的順序,執行所有為指令碼模式找到的適當啟動腳本。如果兩個不同的啟動腳本中定義了相同的東西,則稍後執行的腳本優先。
-
在平台的標準全域組態路徑中。
在 Windows 上:
%PROGRAMDATA%\MySQL\mysqlsh\mysqlshrc.[js|py]
在 Unix 上:
/etc/mysql/mysqlsh/mysqlshrc.[js|py]
-
在 MySQL Shell 主資料夾的
share/mysqlsh
子目錄中,該子目錄可以由環境變數MYSQLSH_HOME
定義,或由 MySQL Shell 識別。如果未定義MYSQLSH_HOME
,MySQL Shell 會將其自己的主資料夾識別為包含 mysqlsh 二進位檔的bin
資料夾的父資料夾(如果存在此類資料夾)。(對於許多標準安裝,因此不需要定義MYSQLSH_HOME
。)在 Windows 上:
%MYSQLSH_HOME%\share\mysqlsh\mysqlshrc.[js|py]
在 Unix 上:
$MYSQLSH_HOME/share/mysqlsh/mysqlshrc.[js|py]
-
在包含 mysqlsh 二進位檔的資料夾中,但僅當選項 2 中描述的 MySQL Shell 主資料夾既未指定,也未由 MySQL Shell 在預期的標準位置識別時。
在 Windows 上:
<mysqlsh 二進位檔路徑>\mysqlshrc.[js|py]
在 Unix 上:
<mysqlsh 二進位檔路徑>/mysqlshrc.[js|py]
-
在由環境變數
MYSQLSH_USER_CONFIG_HOME
定義的 MySQL Shell 使用者組態路徑中。在 Windows 上:
%MYSQLSH_USER_CONFIG_HOME%\mysqlshrc.[js|py]
在 Unix 上:
$MYSQLSH_USER_CONFIG_HOME/mysqlshrc.[js|py]
-
在平台的標準使用者組態路徑中,但僅當選項 4 中描述的 MySQL Shell 使用者組態路徑未指定時。
在 Windows 上:
%APPDATA%\MySQL\mysqlsh\mysqlshrc.[js|py]
在 Unix 上:
$HOME/.mysqlsh/mysqlshrc.[js|py]