6.5.6 mysqlslap — 负载模拟客户端
The mysqlshow 客户端可以用来快速查看哪些数据库存在,以及它们的表或一个表的列或索引。
mysqlshow 提供了一个命令行界面来多个 SQL SHOW
语句。参见 第15.7.7节,“SHOW 语句”。同样的信息也可以通过直接使用这些语句来获取,例如,您可以从 mysql 客户端程序中发出它们。
调用 mysqlshow 如下所示:
mysqlshow [options] [db_name [tbl_name [col_name]]]
-
如果没有指定数据库,会显示一个数据库名称列表。
-
如果没有指定表,则在数据库中显示所有匹配的表。
-
如果没有指定列,则在表中显示所有匹配的列和列类型。
输出只显示您有权限访问的那些数据库、表或列的名称。
如果最后一个参数包含shell或SQL通配符字符(*
,?
,%
或 _
),只显示匹配通配符的名称。如果数据库名称中包含下划线,则这些应该用反斜杠(某些Unix shell可能需要两个)来转义,以获取正确的表或列列表。*
和 ?
字符会被转换为SQL中的 %
和 _
通配符字符。这可能在尝试显示一个名为 _
的表的列时造成混淆,因为在这种情况下,mysqlshow 只显示匹配模式的表名称。这可以通过在命令行末尾添加额外的 %
来解决这个问题。
mysqlshow 支持以下选项,可以在命令行或 [mysqlshow]
和 [client]
小组中的选项文件中指定。有关MySQL程序使用的选项文件的信息,请参见 第6.2.2.2节,“使用选项文件”。
表6.15 mysqlshow 选项
Option Name | Description |
---|---|
--bind-address | 使用指定的网络接口连接到MySQL服务器 |
--character-sets-dir | 字符集可以在其中找到目录 |
--compress | 压缩客户端和服务器之间发送的所有信息 |
--compression-algorithms | 允许的连接到服务器的压缩算法 |
--count | 显示每个表的行数 |
--debug | 写入调试日志 |
--debug-check | 当程序退出时打印调试信息 |
--debug-info | 当程序退出时打印调试信息、内存和CPU统计信息 |
--default-auth | 使用的身份验证插件 |
--default-character-set | 指定默认字符集 |
--defaults-extra-file | 读取除了通常选项文件之外的命名选项文件 |
--defaults-file | 只读命名选项文件 |
--defaults-group-suffix | 选项组后缀值 |
--enable-cleartext-plugin | 启用清文本身份验证插件 |
--get-server-public-key | 从服务器请求RSA公钥 |
--help | 显示帮助信息并退出 |
--host | MySQL服务器所在主机 |
--keys | 显示表的索引 |
--login-path | 从~/.mylogin.cnf读取登录路径选项 |
--no-defaults | 不读取任何选项文件 |
--no-login-paths | 不从登录路径文件中读取登录路径 |
--password | 连接到服务器时使用的密码 |
--password1 | 用于连接到服务器的第一个多因素认证密码 |
--password2 | 用于连接到服务器的第二个多因素认证密码 |
--password3 | 用于连接到服务器的第三个多因素认证密码 |
--pipe | (仅限Windows) 使用命名管道连接到服务器 |
--plugin-dir | 插件安装目录 |
--port | 用于连接的TCP/IP端口号码 |
--print-defaults | 打印默认选项 |
--protocol | 使用的传输协议 |
--server-public-key-path | 包含RSA公钥的文件路径名 |
--shared-memory-base-name | (仅限Windows) 共享内存连接的共享内存名称 |
--show-table-type | 显示一个列,指示表类型 |
--socket | (Unix) 使用的套接字文件或(Windows) 命名管道 |
--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 | 如果会话重用失败是否继续建立连接 |
--status | 显示每个表的额外信息 |
--tls-ciphersuites | 用于加密连接的TLSv1.3密码套件 |
--tls-sni-servername | 客户端提供的服务器名称 |
--tls-version | 用于加密连接的TLS协议版本 |
--user | 连接到服务器时使用的MySQL用户名 |
--verbose | 详细模式 |
--version | 显示版本信息并退出 |
--zstd-compression-level | 用于连接到服务器的zstd压缩级别 |
-
--help
,-?
Command-Line Format --help
显示帮助信息并退出。
-
Command-Line Format --bind-address=ip_address
在一台有多个网络接口的计算机上,使用这个选项来选择用于连接到MySQL服务器的接口。
-
Command-Line Format --character-sets-dir=path
Type 字符串 Default Value [none]
字符集安装目录。请参阅第12.15节,“字符集配置”。
-
--compress
,-C
Command-Line Format --compress[={OFF|ON}]
Deprecated 是的 Type 布尔值 Default Value OFF
如果可能,压缩客户端和服务器之间发送的所有信息。请参阅第6.2.8节,“连接压缩控制”。
这个选项已经废弃。预计将在MySQL的未来版本中移除。请参阅配置遗留连接压缩。
-
--compression-algorithms=
value
Command-Line Format --compression-algorithms=value
Type 设置 Default Value uncompressed
Valid Values zlib
zstd
uncompressed
连接到服务器的允许压缩算法。可用的算法与
protocol_compression_algorithms
系统变量相同。默认值为uncompressed
。更多信息,请参阅第6.2.8节,“连接压缩控制”。
-
Command-Line Format --count
显示每个表的行数。这对于非MyISAM类型的表可能很慢。
-
--debug[=
,debug_options
]-# [
debug_options
]Command-Line Format --debug[=debug_options]
Type 字符串 Default Value d:t:o
写入调试日志。一个典型的
debug_options
字符串是d:t:o,
。默认值为file_name
d:t:o
。这个选项只有在MySQL使用
WITH_ DEBUG
时才可用。Oracle提供的MySQL发布版本是不使用这个选项构建的。 -
Command-Line Format --debug-check
Type 布尔值 Default Value FALSE
程序退出时打印一些调试信息。
这项选项仅在MySQL使用
WITH_DEBUG
时可用。Oracle提供的MySQL发布版本是不使用此选项构建的。 -
Command-Line Format --debug-info
Type 布尔值 Default Value FALSE
在程序退出时打印调试信息和内存和CPU使用统计。
这项选项仅在MySQL使用
WITH_DEBUG
时可用。Oracle提供的MySQL发布版本是不使用此选项构建的。 -
Command-Line Format --default-character-set=字符集名称
Type 字符串 使用
字符集名称
作为默认字符集。请参阅第12.15节,“字符集配置”。 -
Command-Line Format --default-auth=插件名称
Type 字符串 关于使用哪个客户端认证插件的提示。请参阅第8.2.17节,“可插拔认证”。
-
Command-Line Format --defaults-extra-file=文件名
Type 文件名 在全局选项文件之后但在用户选项文件之前读取此选项文件。如果
文件名
不是绝对路径名,它将相对于当前目录解释。关于这和其他影响选项文件处理的命令行选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --defaults-file=文件名
Type 文件名 仅使用给定的选项文件。如果文件不存在或无法访问,会发生错误。如果
文件名
不是绝对路径名,它将相对于当前目录解释。例外情况:即使有
--defaults-file
,客户端程序仍然读取.mylogin.cnf
。关于这和其他影响选项文件处理的命令行选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --defaults-group-suffix=字符串
Type 字符串 不仅读取通常的选项组,还读取具有通常名称和
字符串
后缀的其他组。例如,mysqlshow 通常读取[client]
和[mysqlshow]
组。如果给出了如--defaults-group-suffix=_other
这样的选项,mysqlshow 也会读取[client_other]
和[mysqlshow_other]
组。关于这和其他影响选项文件处理的命令行选项的更多信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
Command-Line Format --enable-cleartext-plugin
Type 布尔值 Default Value FALSE
启用
mysql_clear_password
清文本认证插件。 (参见第8.4.1.4节,“客户端清文本可插拔认证”。) -
Command-Line Format --get-server-public-key
Type 布尔值 从服务器请求RSA公钥,该公钥用于基于密钥对的密码交换。这项选项适用于连接到服务器并使用
caching_sha2_password
认证插件进行身份验证的客户端。对于这样的账户,服务器不会在没有请求的情况下将公钥发送给客户端。此外,这个选项对不需要RSA密码交换的连接也是无效的,因为这通常发生在客户端使用安全连接时。如果指定了
--server-public-key-path=
并且提供了一个有效的公钥文件,它将优先于file_name
--get-server-public-key
。有关
caching_sha2_password
插件的信息,请参见第8.4.1.2节,“缓存SHA-2可插拔认证”。 -
--host=
,host_name
-h
host_name
Command-Line Format --host=host_name
Type 字符串 Default Value localhost
连接到MySQL服务器。
-
--keys
,-k
Command-Line Format --keys
显示表的索引。
-
Command-Line Format --login-path=name
Type 字符串 从命名的登录路径中读取选项。一个
“登录路径”
是一个包含指定连接到哪个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 节,“命令行选项影响选项文件处理”。
-
--password[=
,密码
]-p[
密码
]Command-Line Format --password[=密码]
Type 字符串 MySQL 用于连接到服务器的帐户的密码。密码值是可选的。如果不给出,mysqlshow 将提示输入。若给出,必须在
--password=
或-p
后面没有空格地跟随密码。如果未指定密码选项,默认情况下不发送密码。在命令行上指定密码应该被认为是不安全的。为了避免在命令行上输入密码,请使用选项文件。参见第 8.1.2.1 节,“用户密码安全指南”。
要明确指定没有密码,并且 mysqlshow 不应该提示输入,请使用
--skip-password
选项。 -
MySQL 帐户用于连接到服务器的多因素认证因素 1 的密码。密码值是可选的。如果不给出,mysqlshow 将提示输入。若给出,在
--password1=
后面没有空格地跟随密码。如果未指定密码选项,默认情况下不发送密码。在命令行上指定密码应该被认为是不安全的。为了避免在命令行上输入密码,请使用选项文件。参见第 8.1.2.1 节,“用户密码安全指南”。
要明确指定没有密码,并且 mysqlshow 不应该提示输入,请使用
--skip-password1
选项。--password1
和--password
是同义词,--skip-password1
和--skip-password
也是一对同义词。 -
用于连接到服务器的 MySQL 帐户的多因素认证因素 2 的密码。该选项的语义与
--password1
的语义相同;请参阅该选项的描述以获取详细信息。 -
MySQL账户用于连接到服务器的多因素认证第三个因素的密码。该选项的语义与
--password1
的语义相似;请参阅该选项的描述以获取详细信息。 -
--pipe
,-W
Command-Line Format --pipe
Type 字符串 在Windows上,使用命名管道连接到服务器。这一选项仅适用于服务器以支持命名管道连接的方式启动,并且连接到服务器的用户必须是指定由
named_pipe_full_access_group
系统变量指定的Windows组成员。 -
Command-Line Format --plugin-dir=dir_name
Type 目录名称 指定插件所在的目录。使用此选项如果
--default-auth
选项用于指定认证插件,但mysqlshow无法找到它。请参阅第8.2.17节,“可插拔认证”。 -
--port=
,port_num
-P
port_num
Command-Line Format --port=port_num
Type 数字 Default Value 3306
用于TCP/IP连接的端口号。
-
Command-Line Format --print-defaults
打印程序名称及其来自选项文件的所有选项。
有关此类以及其他影响选项文件处理的命令行选项的详细信息,请参阅第6.2.2.3节,“影响选项文件处理的命令行选项”。
-
--protocol={TCP|SOCKET|PIPE|MEMORY}
Command-Line Format --protocol=type
Type 字符串 Default Value [see text]
Valid Values TCP
SOCKET
PIPE
MEMORY
用于连接到服务器的传输协议。它在其他连接参数通常导致使用不同于您想要的协议时非常有用。在可接受值的详细信息,请参阅第6.2.7节,“连接传输协议”。
-
--server-public-key-path=
file_name
Command-Line Format --server-public-key-path=file_name
Type 文件名 包含服务器端用于RSA密钥对密码交换所需的客户端副本公钥的PEM格式文件路径。这一选项适用于使用
sha256_password
或caching_sha2_password
认证插件的客户端。对于不使用RSA密码交换的连接(例如,通过安全连接),这将被忽略。此外,如果给出--server-public-key-path=
并指定了有效的公钥文件,它将优先于file_name
--get-server-public-key
。对于
sha256_password
,这将仅在MySQL使用OpenSSL进行构建时适用。For
sha256_password
, this option applies only if MySQL was built using OpenSSL.关于
sha256_密码
和缓存_sha2_密码
插件的信息,请参阅第 8.4.1.3 节,“SHA-256 可插拔认证”,以及第 8.4.1.2 节,“缓存 SHA-2 可插拔认证”。 -
Command-Line Format --共享内存基础名称=name
Platform Specific Windows 在 Windows 上,用于通过共享内存连接到本地服务器的共享内存名称。默认值为
MYSQL
。共享内存名称不区分大小写。这个选项只适用于服务器以支持共享内存连接的方式启动时启用了
共享内存
系统变量。 -
--显示表类型
,-t
Command-Line Format --显示表类型
显示一个列,指示表的类型,如
SHOW FULL TABLES
。类型为基础表
或视图
。 -
--套接字=
,path
-S
path
Command-Line Format --套接字={文件名|管道名}
Type 字符串 对于连接到
localhost
的本地服务器,使用的 Unix 套接字文件名称,或在 Windows 上,用于命名管道的名称。在 Windows 上,这个选项只适用于服务器以支持命名管道连接的方式启动时启用了
命名管道
系统变量。此外,执行连接的用户必须是 Windows 组中指定的成员,该组由命名管道全访问组
系统变量指定。 -
以
--ssl
开头的选项指定是否使用加密连接,并指示在哪里找到 SSL 密钥和证书。请参阅加密连接选项。 -
Command-Line Format --ssl-FIPS模式={OFF|ON|STRICT}
Deprecated 是的 Type 枚举 Default Value OFF
Valid Values OFF
ON
STRICT
控制客户端是否启用 FIPS 模式。与其他以
--ssl-
开头的选项不同,xxx
--ssl-FIPS模式
不用于建立加密连接,而是用来影响哪些加密操作被允许。请参阅第 8.8 节,“FIPS 支持”。这些
--ssl-FIPS模式
值是允许的:-
OFF
: 禁用 FIPS 模式。 -
ON
: 启用 FIPS 模式。 -
STRICT
: 启用“严格” FIPS 模式。
Note如果 OpenSSL FIPS 对象模块不可用,那么唯一允许的
--ssl-FIPS模式
值为OFF
。在这种情况下,将--ssl-FIPS模式
设置为ON
或STRICT
将导致客户端在启动时产生警告,并以非 FIPS 模式运行。这个选项已被弃用。预计将在未来的 MySQL 版本中移除。
-
-
--状态
,-i
Command-Line Format --状态
显示每个表的额外信息。
-
--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_options()
的MYSQL_OPT_TLS_SNI_SERVERNAME
选项。服务器名称不区分大小写。要显示客户端为当前会话指定的服务器名称(如果有),请检查Tls_sni_server_name
状态变量。Server Name Indication (SNI) 是TLS协议的一个扩展(OpenSSL必须使用TLS扩展编译此选项才能工作)。MySQL SNI实现仅代表客户端。
-
Command-Line Format --tls-version=protocol_list
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
显示版本信息并退出。
-
--zstd-compression-level=
level
Command-Line Format --zstd-compression-level=#
Type 整数 用于连接到服务器并使用zstd压缩算法的压缩级别。允许的级别从1到22,较大的值表示更高的压缩级别。默认的zstd压缩级别为3。压缩级别设置对不使用zstd压缩算法的连接无效。
更多信息,请参阅第6.2.8节,“连接压缩控制”。