Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  mysql_migrate_keyring — Keyring Key Migration Utility

6.6.8 mysqlbinlog — 用于处理二进制日志文件的实用程序

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 选项

Option Name Description
--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套接字文件或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

    Command-Line Format --help

    显示帮助信息并退出。

  • --component-dir=dir_name

    Command-Line Format --component-dir=dir_name
    Type 目录名称

    密钥环组件所在的目录。这通常是本地MySQL服务器的plugin_dir系统变量的值。

    Note

    --component-dir--source-keyring--destination-keyring 对于所有由mysql_迁移密钥环执行的密钥环迁移操作是必需的。另外,源和目标组件必须不同,而且两个组件都必须正确配置,以便mysql_迁移密钥环可以加载并使用它们。

  • --defaults-extra-file=文件名

    Command-Line Format --defaults-extra-file=文件名
    Type 文件名

    在全局选项文件之后读取这个选项文件,但在(在Unix上)用户选项文件之前。如果文件不存在或无法访问,会发生错误。如果文件名不是绝对路径名,它将相对于当前目录解释。

    对于此选项文件及其它选项文件选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”

  • --defaults-file=文件名

    Command-Line Format --defaults-file=文件名
    Type 文件名

    只使用给定的选项文件。如果文件不存在或无法访问,会发生错误。如果文件名不是绝对路径名,它将相对于当前目录解释。

    例外情况:即使有--defaults-file,客户端程序仍然读取.mylogin.cnf

    对于此和其他选项文件选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”

  • --defaults-group-suffix=str

    Command-Line Format --defaults-group-suffix=str
    Type 字符串

    除了常规选项组外,还要阅读那些以常规名称加上一个后缀的选项组,后缀是 str。例如,mysql_ migrate_keyring 通常会读取 [mysql_ migrate_keyring] 组。如果这个选项以 --defaults-group-suffix=_other 的形式给出,那么 mysql_ migrate_keyring 也会读取 [mysql_ migrate_keyring_other] 组。

    关于这个和其他影响选项文件处理的命令行选项的更多信息,请参阅第6.2.2.3节,“命令行选项对选项文件处理的影响”

  • --destination-keyring=name

    Command-Line Format --destination-keyring=name
    Type 字符串

    用于密钥迁移的目标密钥组件。选项值的格式和解释与--source-keyring选项描述的一致。

    Note

    --component-dir, --source-keyring, 和 --destination-keyring 对于所有由 mysql_迁移密钥环 执行的密钥环迁移操作是必需的。另外,源和目标组件必须不同,而且两个组件都必须正确配置,以便 mysql_迁移密钥环 可以加载并使用它们。

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

    Command-Line Format --destination-keyring-configuration-dir=dir_name
    Type 目录名称

    这个选项只有在目标密钥环组件的全局配置文件中包含 "read_local_config": true,表示组件配置包含在本地配置文件中时才适用。该选项值指定了包含该本地文件的目录。

  • --get-server-public-key

    Command-Line Format --get-server-public-key
    Type 布尔值

    从服务器请求用于RSA密钥对密码交换所需的公钥。这项选项适用于使用caching_sha2_password认证插件进行身份验证的客户端。对于该插件,服务器不会发送公钥,除非被请求。此选项对不使用RSA密码交换的账户无效,这在客户端通过安全连接连接到服务器时尤为明显。

    如果给定--server-public-key-path=文件名并指定了一个有效的公钥文件,它将优先于--get-server-public-key

    关于caching_sha2_password插件的信息,请参阅第8.4.1.2节,“Caching SHA-2 Pluggable Authentication”

  • --host=主机名, -h 主机名

    Command-Line Format --host=主机名
    Type 字符串
    Default Value localhost

    当前运行服务器使用的一种密钥迁移密钥库时,主机位置。迁移总是发生在本地主机上,因此选项始终指定连接到本地服务器的值,如 localhost127.0.0.1::1 或者本地主机IP地址或主机名。

  • --login-path=name

    Command-Line Format --login-path=name
    Type 字符串

    从命名的登录路径中读取选项,这个登录路径在 .mylogin.cnf 登录路径文件中。一个 登录路径” 是包含指定连接到哪个MySQL服务器以及以何种身份进行认证的选项组。要创建或修改登录路径文件,请使用 mysql_config_editor 工具。见第6.6.7节,“mysql_config_editor — MySQL 配置工具”

    关于此类选项文件选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”

  • --no-login-paths

    Command-Line Format --no-login-paths

    跳过从登录路径文件中读取选项。

    查看--login-path的相关信息。

    关于此和其他选项文件选项的更多信息,请参阅第6.2.2.3节,“命令行选项影响选项文件处理”

  • --no-defaults

    Command-Line Format --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

    Command-Line Format --online-migration
    Type 布尔值
    Default Value FALSE

    当服务器正在使用密钥环时,这个选项是必需的。它告诉 mysql_migrate_keyring 进行在线密钥迁移。该选项具有以下效果:

  • --password[=密码], -p[密码]

    Command-Line Format --password[=密码]
    Type 字符串

    MySQL账户用于连接正在运行的服务器并使用其中一个密钥迁移密钥库的密码。密码值是可选的。如果不给出,mysql_migrate_keyring 将提示输入一个。如果提供了密码,必须在--password=-p后面没有空格。若未指定密码选项,默认情况下不发送密码。

    在命令行上指定密码应该被认为是不安全的。为了避免在命令行上提供密码,请使用选项文件。请参阅第8.1.2.1节,“用户指南:密码安全”

    要明确指定没有密码,并且mysql_migrate_keyring 不会提示输入一个,请使用--skip-password选项。

  • --port=端口号, -P 端口号

    Command-Line Format --port=端口号
    Type 数字
    Default Value 0

    对于TCP/IP连接,用于连接正在运行的服务器,该服务器当前正在使用一个关键迁移密钥库的端口号。

  • --print-defaults

    Command-Line Format --print-defaults

    打印程序名称及其来自选项文件的所有选项。

    有关此和其他影响选项文件处理的命令行选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”

  • --server-public-key-path=文件名

    Command-Line Format --server-public-key-path=文件名
    Type 文件名

    包含服务器端公钥的PEM格式文件路径名称。该选项适用于使用sha256_passwordcaching_sha2_password认证插件进行客户端认证的客户端。这一选项对于不使用这些插件进行认证的账户无效。此外,当客户端通过安全连接连接到服务器时,RSA密码交换不被使用,因此该选项也会被忽略。

    如果给定了--server-public-key-path=文件名,并且它指定了一个有效的公钥文件,那么它将优先于--get-server-public-key

    对于sha256_密码,这个选项只适用于使用OpenSSL编译的MySQL版本。

    关于sha256_密码caching_sha2_密码插件的信息,请参阅第8.4.1.3节,“SHA-256 插拔式认证”,以及第8.4.1.2节,“Caching SHA-2 插拔式认证”

  • --socket=路径-S 路径

    Command-Line Format --socket={文件名|管道名}
    Type 字符串

    用于Unix套接字文件或Windows命名管道连接的套接字文件或命名管道,用于连接到当前正在使用一个密钥迁移密钥存储的运行服务器。

    在Windows上,这个选项仅适用于服务器以支持命名管道连接而启动时,named_pipe系统变量被启用。在此情况下,尝试建立连接的用户必须是由named_pipe_full_access_group系统变量指定的Windows组成员。

  • --source-keyring=name

    Command-Line Format --source-keyring=name
    Type 字符串

    用于密钥迁移的源密钥环组件。这是指定没有平台特定扩展名(如.so.dll)的库文件名称。例如,要使用库文件为component_keyring_file.so的组件,指定选项为--source-keyring=component_keyring_file

    Note

    --component-dir--source-keyring,和--destination-keyring对于所有由mysql_迁移密钥环执行的密钥环迁移操作是必需的。另外,源和目标组件必须不同,而且两个组件都必须正确配置,以便mysql_迁移密钥环可以加载并使用它们。

  • --source-keyring-configuration-dir=dir_name

    Command-Line Format --source-keyring-configuration-dir=dir_name
    Type 目录名称

    这个选项只适用于源密钥环组件的全局配置文件包含 "read_local_config": true,表示组件配置包含在本地配置文件中。该选项值指定了包含该本地文件的目录。

  • --ssl*

    --ssl 开头的选项指定是否使用加密连接服务器,并指示SSL密钥和证书的位置。请参阅命令选项:加密连接

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

    Command-Line Format --ssl-fips-mode={OFF|ON|STRICT}
    Deprecated
    Type 枚举
    Default Value OFF
    Valid Values

    OFF

    ON

    STRICT

    控制是否在客户端启用FIPS模式。与其他以 --ssl- xxx 开头的选项不同,--ssl-fips-mode 用于影响哪些加密操作被允许,而不是用于建立加密连接。请参阅第8.8节,“FIPS支持”

    这些 --ssl-fips-mode 的值是允许的:

    • OFF:禁用FIPS模式。

    • ON:启用FIPS模式。

    • STRICT:启用“严格”FIPS模式。

    Note

    如果OpenSSL FIPS对象模块不可用,--ssl-fips-mode的唯一允许值为 OFF。在这种情况下,将--ssl-fips-mode设置为 ONSTRICT 将在启动时导致客户端产生一个警告,并以非FIPS模式运行。

    此选项已被弃用。预计将来版本的MySQL中将其移除。

  • --tls-ciphersuites=ciphersuite_list

    Command-Line Format --tls-ciphersuites=ciphersuite_list
    Type 字符串

    用于TLSv1.3加密连接的允许密码套件。值是一个由一个或多个冒号分隔的密码套件名称列表。可以为此选项命名的密码套件取决于MySQL编译时使用的SSL库。有关详细信息,请参阅第8.3.2节,“加密连接TLS协议和密码”

  • --tls-sni-servername=server_name

    Command-Line Format --tls-sni-servername=server_name
    Type 字符串

    当指定时,名称将通过 libmysqlclient C API 库的 MYSQL_OPT_TLS_SNI_SERVERNAME 选项传递给mysql_options()。服务器名称不区分大小写。要查看客户端为当前会话指定的服务器名称(如果有),请检查Tls_sni_server_name状态变量。

    Server Name Indication (SNI) 是 TLS 协议的一个扩展(OpenSSL 必须使用 TLS 扩展编译此选项才能工作)。MySQL 对 SNI 的实现仅限于客户端侧。

  • --tls-version=协议列表

    Command-Line Format --tls-version=协议列表
    Type 字符串
    Default Value

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

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

    用于加密连接的允许 TLS 协议。值是一个或多个以逗号分隔的协议名称列表。可以为此选项命名的协议取决于用来编译 MySQL 的 SSL 库。详细信息,请参阅第 8.3.2 节,“加密连接的 TLS 协议和密码”

  • --user=user_name, -u user_name

    Command-Line Format --user=user_name
    Type 字符串

    MySQL账户的用户名称,用于连接到正在运行的服务器,该服务器当前使用一个密钥迁移密钥库。

  • --verbose, -v

    Command-Line Format --verbose

    详细模式。生成更多关于程序所做的事情的输出。

  • --version, -V

    Command-Line Format --version

    显示版本信息并退出。