文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手冊頁 (TGZ) - 258.2Kb
手冊頁 (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  mysql_migrate_keyring — 金鑰環金鑰遷移工具

6.6.8 mysql_migrate_keyring — 金鑰環金鑰遷移工具

mysql_migrate_keyring 公用程式會在一個金鑰環元件和另一個金鑰環元件之間遷移金鑰。它支援離線和線上遷移。

以下列方式調用 mysql_migrate_keyring (在單行上輸入命令)

mysql_migrate_keyring
  --component-dir=dir_name
  --source-keyring=name
  --destination-keyring=name
  [other options]

如需有關金鑰遷移的資訊,以及說明如何使用 mysql_migrate_keyring 和其他方法執行金鑰遷移的指示,請參閱 第 8.4.4.11 節「在金鑰環金鑰儲存之間遷移金鑰」

mysql_migrate_keyring 支援下列選項,這些選項可以在命令列或選項檔案的 [mysql_migrate_keyring] 群組中指定。如需有關 MySQL 程式使用的選項檔案的資訊,請參閱 第 6.2.2.2 節「使用選項檔案」

表格 6.19 mysql_migrate_keyring 選項

選項名稱 說明
--component-dir 金鑰環元件的目錄
--defaults-extra-file 除了常用的選項檔案之外,還讀取指定的選項檔案
--defaults-file 僅讀取指定的選項檔案
--defaults-group-suffix 選項群組尾碼值
--destination-keyring 目的地金鑰環元件名稱
--destination-keyring-configuration-dir 目的地金鑰環元件組態目錄
--get-server-public-key 向伺服器請求 RSA 公開金鑰
--help 顯示說明訊息並結束
--host MySQL 伺服器所在的的主機
--login-path 從 .mylogin.cnf 讀取登入路徑選項
--no-defaults 不讀取選項檔案
--no-login-paths 不從登入路徑檔案讀取登入路徑
--online-migration 遷移來源是作用中的伺服器
--password 連線至伺服器時要使用的密碼
--port 連線的 TCP/IP 連接埠號碼
--print-defaults 列印預設選項
--server-public-key-path 包含 RSA 公開金鑰的檔案路徑名稱
--socket 要使用的 Unix socket 檔案或 Windows 具名管道
--source-keyring 來源金鑰環元件名稱
--source-keyring-configuration-dir 來源金鑰環元件組態目錄
--ssl-ca 包含信任的 SSL 憑證授權單位清單的檔案
--ssl-capath 包含信任的 SSL 憑證授權單位憑證檔案的目錄
--ssl-cert 包含 X.509 憑證的檔案
--ssl-cipher 連線加密允許的密碼
--ssl-crl 包含憑證撤銷清單的檔案
--ssl-crlpath 包含憑證撤銷清單檔案的目錄
--ssl-fips-mode 是否要在用戶端啟用 FIPS 模式
--ssl-key 包含 X.509 金鑰的檔案
--ssl-mode 連線至伺服器的所需安全性狀態
--ssl-session-data 包含 SSL 工作階段資料的檔案
--ssl-session-data-continue-on-failed-reuse 如果工作階段重複使用失敗,是否建立連線
--tls-ciphersuites 加密連線允許的 TLSv1.3 密碼套件
--tls-sni-servername 用戶端提供的伺服器名稱
--tls-version 加密連線允許的 TLS 協定
--user 連線至伺服器時要使用的 MySQL 使用者名稱
--verbose 詳細模式
--version 顯示版本資訊並結束

  • --help, -h

    命令列格式 --help

    顯示說明訊息並結束。

  • --component-dir=dir_name

    命令列格式 --component-dir=dir_name
    類型 目錄名稱

    金鑰環元件所在的目錄。這通常是本機 MySQL 伺服器的 plugin_dir 系統變數的值。

    注意

    --component-dir--source-keyring--destination-keyring 對於 mysql_migrate_keyring 執行的所有金鑰環遷移作業都是強制性的。此外,來源和目的地元件必須不同,而且兩個元件都必須正確設定,mysql_migrate_keyring 才能載入和使用它們。

  • --defaults-extra-file=file_name

    命令列格式 --defaults-extra-file=file_name
    類型 檔案名稱

    在全域選項檔案之後 (但在 Unix 上) 在使用者選項檔案之前讀取此選項檔案。如果檔案不存在或無法存取,就會發生錯誤。如果 file_name 不是絕對路徑名稱,則會相對於目前目錄進行解譯。

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --defaults-file=file_name

    命令列格式 --defaults-file=file_name
    類型 檔案名稱

    僅使用指定的選項檔案。如果檔案不存在或無法存取,則會發生錯誤。如果 file_name 不是絕對路徑名稱,則會根據目前目錄進行解譯。

    例外:即使使用 --defaults-file,用戶端程式仍會讀取 .mylogin.cnf

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --defaults-group-suffix=str

    命令列格式 --defaults-group-suffix=str
    類型 字串

    不僅讀取一般選項群組,也讀取具有一般名稱和 str 後綴的群組。例如,mysql_migrate_keyring 通常讀取 [mysql_migrate_keyring] 群組。如果將此選項指定為 --defaults-group-suffix=_othermysql_migrate_keyring 也會讀取 [mysql_migrate_keyring_other] 群組。

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --destination-keyring=name

    命令列格式 --destination-keyring=name
    類型 字串

    金鑰遷移的目的地金鑰環元件。選項值的格式和解譯方式與 --source-keyring 選項的描述相同。

    注意

    --component-dir--source-keyring--destination-keyring 對於 mysql_migrate_keyring 執行的所有金鑰環遷移作業都是強制性的。此外,來源和目的地元件必須不同,而且兩個元件都必須正確設定,mysql_migrate_keyring 才能載入和使用它們。

  • --destination-keyring-configuration-dir=dir_name

    命令列格式 --destination-keyring-configuration-dir=dir_name
    類型 目錄名稱

    僅當目的地金鑰環元件全域組態檔案包含 "read_local_config": true 時,此選項才適用,這表示元件組態包含在本地組態檔案中。選項值指定包含該本地檔案的目錄。

  • --get-server-public-key

    命令列格式 --get-server-public-key
    類型 布林值

    向伺服器請求 RSA 金鑰配對式密碼交換所需的公鑰。此選項適用於使用 caching_sha2_password 驗證外掛程式進行驗證的用戶端。對於該外掛程式,除非請求,否則伺服器不會傳送公鑰。對於未使用該外掛程式進行驗證的帳戶,會忽略此選項。如果未使用基於 RSA 的密碼交換,也會忽略此選項,例如當用戶端使用安全連線連線至伺服器時。

    如果指定 --server-public-key-path=file_name 且指定有效的公鑰檔案,則優先於 --get-server-public-key

    有關 caching_sha2_password 外掛程式的資訊,請參閱第 8.4.1.1 節,〈快取 SHA-2 可插入式驗證〉

  • --host=host_name-h host_name

    命令列格式 --host=host_name
    類型 字串
    預設值 localhost

    目前正在使用金鑰遷移金鑰儲存區之一的執行中伺服器的主機位置。遷移始終在本機主機上進行,因此此選項始終指定連線至本機伺服器的值,例如 localhost127.0.0.1::1 或本機主機 IP 位址或主機名稱。

  • --login-path=name

    命令列格式 --login-path=name
    類型 字串

    .mylogin.cnf 登入路徑檔案中指定的登入路徑讀取選項。「登入路徑」是一個選項群組,其中包含指定要連線至哪個 MySQL 伺服器以及要驗證為哪個帳戶的選項。若要建立或修改登入路徑檔案,請使用 mysql_config_editor 公用程式。請參閱第 6.6.7 節,〈mysql_config_editor — MySQL 組態公用程式〉

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --no-login-paths

    命令列格式 --no-login-paths

    略過從登入路徑檔案讀取選項。

    有關相關資訊,請參閱 --login-path

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --no-defaults

    命令列格式 --no-defaults

    不讀取任何選項檔案。如果由於從選項檔案讀取不明選項而導致程式啟動失敗,則可以使用 --no-defaults 來防止讀取這些選項。

    例外情況是,如果存在,則在所有情況下都會讀取 .mylogin.cnf 檔案。這允許以比在命令列上更安全的方式指定密碼,即使使用 --no-defaults 也是如此。若要建立 .mylogin.cnf,請使用 mysql_config_editor 公用程式。請參閱第 6.6.7 節,〈mysql_config_editor — MySQL 組態公用程式〉

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --online-migration

    命令列格式 --online-migration
    類型 布林值
    預設值 FALSE

    當執行中的伺服器正在使用金鑰環時,此選項是強制性的。它會告知 mysql_migrate_keyring 執行線上金鑰遷移。此選項具有以下效果:

    • mysql_migrate_keyring 使用指定的任何連線選項連線至伺服器;否則會忽略這些選項。

    • mysql_migrate_keyring 連線至伺服器後,它會告知伺服器暫停金鑰環操作。金鑰複製完成後,mysql_migrate_keyring 會告知伺服器它可以恢復金鑰環操作,然後再中斷連線。

  • --password[=password]-p[password]

    命令列格式 --password[=password]
    類型 字串

    用於連線至目前正在使用金鑰遷移金鑰儲存區之一的執行中伺服器的 MySQL 帳戶密碼。密碼值是選擇性的。如果未給定,mysql_migrate_keyring 會提示輸入密碼。如果給定,--password=-p 與後面的密碼之間必須沒有空格。如果未指定任何密碼選項,預設是不傳送任何密碼。

    在命令列上指定密碼應被視為不安全。若要避免在命令列上提供密碼,請使用選項檔案。請參閱第 8.1.2.1 節,〈密碼安全性的使用者指南〉

    若要明確指定沒有密碼,且 mysql_migrate_keyring 不應提示輸入密碼,請使用 --skip-password 選項。

  • --port=port_num-P port_num

    命令列格式 --port=port_num
    類型 數值
    預設值 0

    對於 TCP/IP 連線,用於連線至目前正在使用金鑰遷移金鑰儲存區之一的執行中伺服器的連接埠號碼。

  • --print-defaults

    命令列格式 --print-defaults

    列印程式名稱及其從選項檔案取得的所有選項。

    關於此選項和其他選項檔案選項的更多資訊,請參閱第 6.2.2.3 節,〈影響選項檔案處理的命令列選項〉

  • --server-public-key-path=file_name

    命令列格式 --server-public-key-path=file_name
    類型 檔案名稱

    PEM 格式的檔案路徑名稱,其中包含伺服器用於 RSA 金鑰配對式密碼交換所需的公鑰用戶端複本。此選項適用於使用 sha256_passwordcaching_sha2_password 驗證外掛程式進行驗證的用戶端。對於未使用這些外掛程式之一進行驗證的帳戶,會忽略此選項。如果未使用基於 RSA 的密碼交換,也會忽略此選項,例如當用戶端使用安全連線連線至伺服器時。

    如果指定 --server-public-key-path=file_name 且指定有效的公鑰檔案,則優先於 --get-server-public-key

    對於 sha256_password,僅當 MySQL 是使用 OpenSSL 建置時,此選項才適用。

    關於 sha256_passwordcaching_sha2_password 外掛程式的資訊,請參閱第 8.4.1.2 節,「SHA-256 可插拔驗證」,以及第 8.4.1.1 節,「快取 SHA-2 可插拔驗證」

  • --socket=路徑-S 路徑

    命令列格式 --socket={檔案名稱|管道名稱}
    類型 字串

    對於 Unix socket 檔案或 Windows 具名管道連線,這是連線到目前正在使用其中一個金鑰移轉金鑰儲存區之執行中伺服器的 socket 檔案或具名管道。

    在 Windows 上,只有在伺服器啟動時啟用 named_pipe 系統變數以支援具名管道連線時,此選項才適用。此外,建立連線的使用者必須是 named_pipe_full_access_group 系統變數指定的 Windows 群組的成員。

  • --source-keyring=名稱

    命令列格式 --source-keyring=名稱
    類型 字串

    金鑰移轉的來源金鑰環元件。這是指定的元件程式庫檔案名稱,不含任何平台特定的副檔名,例如 .so.dll。例如,若要使用程式庫檔案為 component_keyring_file.so 的元件,請將選項指定為 --source-keyring=component_keyring_file

    注意

    --component-dir--source-keyring--destination-keyring 對於 mysql_migrate_keyring 執行的所有金鑰環遷移作業都是強制性的。此外,來源和目的地元件必須不同,而且兩個元件都必須正確設定,mysql_migrate_keyring 才能載入和使用它們。

  • --source-keyring-configuration-dir=目錄名稱

    命令列格式 --source-keyring-configuration-dir=目錄名稱
    類型 目錄名稱

    只有在來源金鑰環元件全域組態檔案包含 "read_local_config": true,表示元件組態包含在本地組態檔案中時,此選項才適用。選項值指定包含該本地檔案的目錄。

  • --ssl*

    開頭為 --ssl 的選項指定是否使用加密連線到伺服器,並指出在哪裡尋找 SSL 金鑰和憑證。請參閱加密連線的命令選項

  • --ssl-fips-mode={OFF|ON|STRICT}

    命令列格式 --ssl-fips-mode={OFF|ON|STRICT}
    已過時
    類型 列舉
    預設值 OFF
    有效值

    OFF

    ON

    STRICT

    控制是否在用戶端啟用 FIPS 模式。--ssl-fips-mode 選項與其他 --ssl-xxx 選項的不同之處在於,它不是用於建立加密連線,而是影響允許哪些加密操作。請參閱第 8.8 節,「FIPS 支援」

    允許這些 --ssl-fips-mode

    • OFF:停用 FIPS 模式。

    • ON:啟用 FIPS 模式。

    • STRICT:啟用嚴格 FIPS 模式。

    注意

    如果 OpenSSL FIPS 物件模組不可用,則 --ssl-fips-mode 唯一允許的值是 OFF。在此情況下,將 --ssl-fips-mode 設定為 ONSTRICT 會導致用戶端在啟動時產生警告,並在非 FIPS 模式下運作。

    此選項已過時。預計在未來版本的 MySQL 中移除。

  • --tls-ciphersuites=加密套件清單

    命令列格式 --tls-ciphersuites=加密套件清單
    類型 字串

    使用 TLSv1.3 的加密連線允許的加密套件。此值是一個或多個以冒號分隔的加密套件名稱的清單。可以針對此選項命名的加密套件取決於用於編譯 MySQL 的 SSL 程式庫。如需詳細資訊,請參閱第 8.3.2 節,「加密連線 TLS 通訊協定和加密」

  • --tls-sni-servername=伺服器名稱

    命令列格式 --tls-sni-servername=伺服器名稱
    類型 字串

    指定時,名稱會使用 mysql_options()MYSQL_OPT_TLS_SNI_SERVERNAME 選項傳遞至 libmysqlclient C API 程式庫。伺服器名稱不區分大小寫。若要顯示用戶端為目前工作階段指定的伺服器名稱 (如果有的話),請檢查 Tls_sni_server_name 狀態變數。

    伺服器名稱指示 (SNI) 是 TLS 通訊協定的延伸 (OpenSSL 必須使用 TLS 延伸編譯,此選項才能運作)。SNI 的 MySQL 實作僅代表用戶端。

  • --tls-version=通訊協定清單

    命令列格式 --tls-version=通訊協定清單
    類型 字串
    預設值

    TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 (OpenSSL 1.1.1 或更高版本)

    TLSv1,TLSv1.1,TLSv1.2 (否則)

    加密連線允許的 TLS 通訊協定。此值是一個或多個以逗號分隔的通訊協定名稱的清單。可以針對此選項命名的通訊協定取決於用於編譯 MySQL 的 SSL 程式庫。如需詳細資訊,請參閱第 8.3.2 節,「加密連線 TLS 通訊協定和加密」

  • --user=使用者名稱-u 使用者名稱

    命令列格式 --user=使用者名稱
    類型 字串

    用於連線到目前正在使用其中一個金鑰移轉金鑰儲存區之執行中伺服器的 MySQL 帳戶的使用者名稱。

  • --verbose-v

    命令列格式 --verbose

    詳細模式。產生更多關於程式所執行動作的輸出。

  • --version-V

    命令列格式 --version

    顯示版本資訊並結束。