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 选项
-
--help
,-h
Command-Line Format --help
显示帮助信息并退出。
-
Command-Line Format --component-dir=dir_name
Type 目录名称 密钥环组件所在的目录。这通常是本地MySQL服务器的
plugin_dir
系统变量的值。Note--component-dir
,--source-keyring
和--destination-keyring
对于所有由mysql_迁移密钥环执行的密钥环迁移操作是必需的。另外,源和目标组件必须不同,而且两个组件都必须正确配置,以便mysql_迁移密钥环可以加载并使用它们。 -
Command-Line Format --defaults-extra-file=文件名
Type 文件名 在全局选项文件之后读取这个选项文件,但在(在Unix上)用户选项文件之前。如果文件不存在或无法访问,会发生错误。如果
文件名
不是绝对路径名,它将相对于当前目录解释。对于此选项文件及其它选项文件选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --defaults-file=文件名
Type 文件名 只使用给定的选项文件。如果文件不存在或无法访问,会发生错误。如果
文件名
不是绝对路径名,它将相对于当前目录解释。例外情况:即使有
--defaults-file
,客户端程序仍然读取.mylogin.cnf
。对于此和其他选项文件选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
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节,“命令行选项对选项文件处理的影响”。
-
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
,表示组件配置包含在本地配置文件中时才适用。该选项值指定了包含该本地文件的目录。 -
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
当前运行服务器使用的一种密钥迁移密钥库时,主机位置。迁移总是发生在本地主机上,因此选项始终指定连接到本地服务器的值,如
localhost
、127.0.0.1
、::1
或者本地主机IP地址或主机名。 -
Command-Line Format --login-path=name
Type 字符串 从命名的登录路径中读取选项,这个登录路径在
.mylogin.cnf
登录路径文件中。一个 “登录路径” 是包含指定连接到哪个MySQL服务器以及以何种身份进行认证的选项组。要创建或修改登录路径文件,请使用 mysql_config_editor 工具。见第6.6.7节,“mysql_config_editor — MySQL 配置工具”。关于此类选项文件选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --no-login-paths
跳过从登录路径文件中读取选项。
查看
--login-path
的相关信息。关于此和其他选项文件选项的更多信息,请参阅第6.2.2.3节,“命令行选项影响选项文件处理”。
-
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 节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --online-migration
Type 布尔值 Default Value FALSE
当服务器正在使用密钥环时,这个选项是必需的。它告诉 mysql_migrate_keyring 进行在线密钥迁移。该选项具有以下效果:
-
mysql_迁移密钥库 使用任何指定的连接选项连接到服务器;这些选项通常被忽略。
-
在mysql_迁移密钥库连接到服务器后,它告诉服务器暂停密钥库操作。当密钥复制完成时,mysql_迁移密钥库 告诉服务器可以恢复密钥库操作,然后断开连接。
-
-
--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连接,用于连接正在运行的服务器,该服务器当前正在使用一个关键迁移密钥库的端口号。
-
Command-Line Format --print-defaults
打印程序名称及其来自选项文件的所有选项。
有关此和其他影响选项文件处理的命令行选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --server-public-key-path=文件名
Type 文件名 包含服务器端公钥的PEM格式文件路径名称。该选项适用于使用
sha256_password
或caching_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组成员。 -
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-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
设置为ON
或STRICT
将在启动时导致客户端产生一个警告,并以非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 的实现仅限于客户端侧。
-
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
显示版本信息并退出。