4.5.1.1 mysqlClient 端选项
mysql支持以下选项,可以在命令行或选项文件的[mysql]
和[client]
组中指定这些选项。有关 MySQL 程序使用的选项文件的信息,请参见第 4.2.2.2 节“使用选项文件”。
table4.12 mysqlClient 端选项
Option Name | Description | Introduced | Deprecated |
---|---|---|---|
--auto-rehash | 启用自动重新哈希 | ||
--auto-vertical-output | 启用自动垂直结果集显示 | ||
--batch | 不使用历史记录文件 | ||
--binary-as-hex | 以十六进制显示二进制值 | 5.7.19 | |
--binary-mode | 禁用\ r\n-到-\ n 转换和将\ 0 视为查询结束 | ||
--bind-address | 使用指定的网络接口连接到 MySQL Server | ||
--character-sets-dir | 字符集的安装目录 | ||
--column-names | 在结果中写入列名 | ||
--column-type-info | 显示结果集元数据 | ||
--comments | 在发送到服务器的语句中保留还是删除 Comments | ||
--compress | 压缩 Client 端和服务器之间发送的所有信息 | ||
--connect-expired-password | 指示服务器 Client 端可以处理过期密码沙箱模式 | ||
--connect-timeout | 连接超时之前的秒数 | ||
--database | 要使用的数据库 | ||
--debug | 编写调试日志;仅当 MySQL 使用调试支持构建时才受支持 | ||
--debug-check | 程序退出时打印调试信息 | ||
--debug-info | 程序退出时打印调试信息,内存和 CPU 统计信息 | ||
--default-auth | 身份验证插件使用 | ||
--default-character-set | 指定默认字符集 | ||
--defaults-extra-file | 除常规选项文件外,还读取命名的选项文件 | ||
--defaults-file | 只读命名的选项文件 | ||
--defaults-group-suffix | 选项组后缀值 | ||
--delimiter | 设置语句定界符 | ||
--enable-cleartext-plugin | 启用明文身份验证插件 | ||
--execute | 执行语句并退出 | ||
--force | 即使发生 SQL 错误,也要 continue | ||
--get-server-public-key | 从服务器请求 RSA 公钥 | 5.7.23 | |
--help | 显示帮助信息并退出 | ||
--histignore | 模式指定日志记录要忽略的语句 | ||
--host | MySQL 服务器所在的主机 | ||
--html | 产生 HTML 输出 | ||
--ignore-spaces | 忽略函数名称后的空格 | ||
--init-command | 连接后执行的 SQL 语句 | ||
--line-numbers | Importing 行号以查找错误 | ||
--local-infile | 启用或禁用 LOAD DATA 的 LOCAL 功能 | ||
--login-path | 从.mylogin.cnf 中读取登录路径选项 | ||
--max-allowed-packet | 发送到服务器或从服务器接收的最大数据包长度 | ||
--max-join-size | 使用--safe-updates 时联接中行的自动限制 | ||
--named-commands | 启用命名的 mysql 命令 | ||
--net-buffer-length | TCP/IP 和套接字通信的缓冲区大小 | ||
--no-auto-rehash | 禁用自动重新哈希 | ||
--no-beep | 发生错误时请勿发出哔声 | ||
--no-defaults | 不读取选项文件 | ||
--one-database | 忽略命令行中指定的默认数据库的语句以外的语句 | ||
--pager | 使用给定命令进行分页查询输出 | ||
--password | 连接服务器时使用的密码 | ||
--pipe | 使用命名管道连接到服务器(仅 Windows) | ||
--plugin-dir | 安装插件的目录 | ||
--port | 用于连接的 TCP/IP 端口号 | ||
--print-defaults | 打印默认选项 | ||
--prompt | 将提示设置为指定格式 | ||
--protocol | 使用的传输协议 | ||
--quick | 不要缓存每个查询结果 | ||
--raw | 写列值时不进行转义转换 | ||
--reconnect | 如果与服务器的连接丢失,则自动尝试重新连接 | ||
--safe-updates, --i-am-a-dummy | 仅允许指定键值的 UPDATE 和 DELETE 语句 | ||
--secure-auth | 不要以旧(4.1 之前)格式向服务器发送密码 | Yes | |
--select-limit | 使用--safe-updates 时 SELECT 语句的自动限制 | ||
--server-public-key-path | 包含 RSA 公钥的文件的路径名 | ||
--shared-memory-base-name | 共享内存连接的共享内存名称(仅 Windows) | ||
--show-warnings | 在每个语句后显示警告(如果有) | ||
--sigint-ignore | 忽略 SIGINTsignal(通常是键入 Control C 的结果) | ||
--silent | Silent mode | ||
--skip-auto-rehash | 禁用自动重新哈希 | ||
--skip-column-names | 不要在结果中写列名 | ||
--skip-line-numbers | 跳过行号以查找错误 | ||
--skip-named-commands | 禁用命名的 mysql 命令 | ||
--skip-pager | Disable paging | ||
--skip-reconnect | Disable reconnecting | ||
--socket | Unix 套接字文件或 Windows 命名管道使用 | ||
--ssl | 启用连接加密 | ||
--ssl-ca | 包含受信任的 SSL 证书颁发机构列 table 的文件 | ||
--ssl-capath | 包含受信任的 SSL 证书颁发机构证书文件的目录 | ||
--ssl-cert | 包含 X.509 证书的文件 | ||
--ssl-cipher | 连接加密的允许密码 | ||
--ssl-crl | 包含证书吊销列 table 的文件 | ||
--ssl-crlpath | 包含证书吊销列 table 文件的目录 | ||
--ssl-key | 包含 X.509 密钥的文件 | ||
--ssl-mode | 与服务器连接的所需安全状态 | 5.7.11 | |
--ssl-verify-server-cert | 根据服务器证书的通用名身份验证主机名 | ||
--syslog | 将交互式语句记录到 syslog | ||
--table | 以 table 格格式显示输出 | ||
--tee | 将输出副本追加到命名文件 | ||
--tls-version | 允许的 TLS 协议进行加密连接 | 5.7.10 | |
--unbuffered | 每次查询后刷新缓冲区 | ||
--user | 连接服务器时使用的 MySQL 用户名 | ||
--verbose | Verbose mode | ||
--version | 显示版本信息并退出 | ||
--vertical | 垂直打印查询输出行(每列值一行) | ||
--wait | 如果无法构建连接,请 await 并重试,而不是中止 | ||
--xml | 产生 XML 输出 |
- --help,
-?
显示帮助消息并退出。
启用自动重新哈希处理。默认情况下,此选项处于启用状态,它将启用数据库,table 和列名称的完成。使用--disable-auto-rehash禁用重新哈希。这会导致mysql的启动速度更快,但是如果要使用名称完成功能,则必须发出rehash
命令或其\#
快捷方式。
要完成名称,请 Importing 第一部分,然后按 Tab。如果名称明确,则mysql完成。否则,您可以再次按 Tab 键以查看可能以到目前为止 Importing 的名称开头的名称。如果没有默认数据库,则不会完成。
Note
此功能需要使用 readline 库编译的 MySQLClient 端。通常, readline 库在 Windows 上不可用。
如果结果集对于当前窗口而言太宽,则导致结果集垂直显示,否则使用常规的 table 格格式。 (这适用于以;
或\G
终止的语句.)
- --batch,
-B
使用 tab 作为列分隔符来打印结果,每一行都换一行。使用此选项,mysql不使用历史记录文件。
批处理模式导致非 table 格输出格式和特殊字符的转义。可以通过使用原始模式来禁用转义。请参阅--raw选项的说明。
指定此选项后,mysql使用十六进制 table 示法(0xvalue
)显示二进制数据。无论整体输出显示格式是 table 格格式,垂直格式,HTML 还是 XML,都会发生这种情况。
启用--binary-as-hex会影响所有二进制字符串的显示,包括CHAR()和UNHEX()之类的函数返回的字符串。下面的示例使用A
的 ASCII 代码(十进制 65,十六进制 41)来说明这一点:
- --binary-as-hex disabled:
mysql> SELECT CHAR(0x41), UNHEX('41');
+------------+-------------+
| CHAR(0x41) | UNHEX('41') |
+------------+-------------+
| A | A |
+------------+-------------+
- --binary-as-hex disabled:
mysql> SELECT CHAR(0x41), UNHEX('41');
+------------------------+--------------------------+
| CHAR(0x41) | UNHEX('41') |
+------------------------+--------------------------+
| 0x41 | 0x41 |
+------------------------+--------------------------+
要编写二进制字符串 table 达式,以便无论是否启用--binary-as-hex都将其显示为字符串,请使用以下技术:
- CHAR()函数具有
USING charset
子句:
mysql> SELECT CHAR(0x41 USING utf8mb4);
+--------------------------+
| CHAR(0x41 USING utf8mb4) |
+--------------------------+
| A |
+--------------------------+
- 通常,使用CONVERT()将 table 达式转换为给定的字符集:
mysql> SELECT CONVERT(UNHEX('41') USING utf8mb4);
+------------------------------------+
| CONVERT(UNHEX('41') USING utf8mb4) |
+------------------------------------+
| A |
+------------------------------------+
MySQL 5.7.19 中添加了此选项。
此选项在处理可能包含BLOB个值的mysqlbinlog个输出时会有所帮助。默认情况下,mysql将语句字符串中的\r\n
转换为\n
并将\0
解释为语句终止符。 --binary-mode禁用这两个功能。在非交互模式下,它还会禁用除charset
和delimiter
之外的所有mysql命令(用于通过管道传输到mysql或使用source
命令加载的 Importing)。
在具有多个网络接口的计算机上,使用此选项选择用于连接到 MySQL 服务器的接口。
字符集的安装目录。参见第 10.15 节“字符集配置”。
在结果中写入列名称。
显示结果集元数据。
- --comments,
-c
是否在发送到服务器的语句中删除或保留 Comments。默认值为--skip-comments(带 Comments),启用为--comments(保留 Comments)。
Note
在 MySQL 5.7 中,无论是否提供此选项,mysqlClient 端始终将优化器提示传递给服务器。如果您将mysqlClient 端的旧版本与可以理解优化器提示的服务器版本配合使用,请确保不剥离优化器提示,请使用--comments选项调用mysql。
从 MySQL 5.7.20 开始,Comments 剥离已被弃用。此功能及其控制选项将在将来的 MySQL 版本中删除。
- --compress,
-C
尽可能压缩 Client 端和服务器之间发送的所有信息。参见第 4.2.6 节“连接压缩控制”。
向服务器指示如果用于连接的帐户密码已过期,则 Client 端可以处理沙箱模式。这对于mysql的非交互式调用很有用,因为通常服务器会断开尝试使用具有过期密码的帐户进行连接的非交互式 Client 端的连接。 (请参阅第 6.2.12 节“过期密码的服务器处理”。)
连接超时之前的秒数。 (默认值为0
.)
- --database=db_name,
-D db_name
要使用的数据库。这主要在选项文件中有用。
- --debug[=debug_options],
-# [debug_options]
编写调试日志。典型的* debug_options
*字符串是d:t:o,file_name
。默认值为d:t:o,/tmp/mysql.trace
。
仅当使用WITH_DEBUG构建 MySQL 时,此选项才可用。使用此选项不是构建 Oracle 提供的 MySQL 发行版二进制文件。
程序退出时,打印一些调试信息。
仅当使用WITH_DEBUG构建 MySQL 时,此选项才可用。使用此选项不是构建 Oracle 提供的 MySQL 发行版二进制文件。
- --debug-info,
-T
程序退出时,打印调试信息以及内存和 CPU 使用情况统计信息。
仅当使用WITH_DEBUG构建 MySQL 时,此选项才可用。使用此选项不是构建 Oracle 提供的 MySQL 发行版二进制文件。
有关使用哪个 Client 端身份验证插件的提示。参见第 6.2.13 节“可插入身份验证”。
使用* charset_name
*作为 Client 端和连接的默认字符集。
如果 os 使用一个字符集,而默认情况下mysqlClient 端使用另一个字符集,则此选项很有用。在这种情况下,输出格式可能不正确。通常,您可以通过使用此选项强制 Client 端使用系统字符集来解决此类问题。
有关更多信息,请参见第 10.4 节“连接字符集和排序规则”和第 10.15 节“字符集配置”。
在全局选项文件之后但在用户选项文件之前(在 Unix 上)读取此选项文件。如果该文件不存在或无法访问,则发生错误。 * file_name
*如果是相对路径名而不是完整路径名,则相对于当前目录进行解释。
有关此选项和其他选项文件选项的更多信息,请参见第 4.2.2.3 节“影响选项文件处理的命令行选项”。
仅使用给定的选项文件。如果该文件不存在或无法访问,则发生错误。 * file_name
*如果是相对路径名而不是完整路径名,则相对于当前目录进行解释。
exception:即使使用--defaults-file,Client 端程序也读取.mylogin.cnf
。
有关此选项和其他选项文件选项的更多信息,请参见第 4.2.2.3 节“影响选项文件处理的命令行选项”。
不仅阅读常规选项组,还阅读具有常规名称和后缀* str
*的组。例如,mysql通常读取[client]
和[mysql]
组。如果提供了--defaults-group-suffix=_other选项,则mysql也会读取[client_other]
和[mysql_other]
组。
有关此选项和其他选项文件选项的更多信息,请参见第 4.2.2.3 节“影响选项文件处理的命令行选项”。
设置语句定界符。默认值为分号字符(;
)。
禁用命名命令。仅使用\*
形式,或仅在以分号(;
)结尾的行的开头使用命名命令。 mysql首先默认启用此选项。但是,即使使用此选项,长格式命令仍然可以从第一行开始执行。参见第 4.5.1.2 节“ mysqlClient 端命令”。
启用mysql_clear_password
明文身份验证插件。 (请参阅第 6.4.1.6 节“Client 端明文可插入身份验证”。)
- --execute=statement,
-e statement
执行该语句并退出。默认输出格式类似于--batch生成的格式。有关某些示例,请参见第 4.2.2.1 节“在命令行上使用选项”。使用此选项,mysql不使用历史记录文件。
- --force,
-f
即使发生 SQL 错误,也要 continue。
从服务器请求基于 RSA 密钥对的密码交换所需的公共密钥。此选项适用于使用caching_sha2_password
身份验证插件进行身份验证的 Client 端。对于该插件,除非请求,否则服务器不会发送公钥。对于未使用该插件进行身份验证的帐户,将忽略此选项。如果不使用基于 RSA 的密码交换,也将被忽略,例如 Client 端使用安全连接连接到服务器时。
如果给出了--server-public-key-path=file_name并指定了有效的公共密钥文件,则它优先于--get-server-public-key。
有关caching_sha2_password
插件的信息,请参见第 6.4.1.4 节“缓存 SHA-2 可插入身份验证”。
--get-server-public-key选项已添加到 MySQL 5.7.23 中。
一个或多个冒号分隔的模式的列 table,这些模式指定出于日志记录目的而忽略的语句。这些模式已添加到默认模式列 table("*IDENTIFIED*:*PASSWORD*"
)。为此选项指定的值会影响记录写入历史文件和syslog
(如果提供了--syslog选项)的语句的记录。有关更多信息,请参见第 4.5.1.3 节“ mysqlClient 端记录”。
- --host=host_name,
-h host_name
连接到给定主机上的 MySQL 服务器。
- --html,
-H
产生 HTML 输出。
- --ignore-spaces,
-i
忽略函数名称后的空格。在IGNORE_SPACE SQL 模式的讨论中描述了此方法的效果(请参见第 5.1.10 节“服务器 SQL 模式”)。
连接到服务器后要执行的 SQL 语句。如果启用了自动重新连接,则重新连接发生后将再次执行该语句。
Importing 行号以查找错误。使用--skip-line-numbers禁用此功能。
默认情况下,LOAD DATA的LOCAL
功能由编译到 MySQLClient 端库中的默认值确定。要显式启用或禁用LOCAL
数据加载,请使用--local-infile选项。如果不指定任何值,则该选项将启用LOCAL
数据加载。当指定为--local-infile=0或--local-infile=1时,该选项将禁用或启用LOCAL
数据加载。
成功使用mysql内的LOCAL
加载操作还需要服务器允许本地加载。见第 6.1.6 节“ LOAD DATA LOCAL 的安全注意事项”
从.mylogin.cnf
登录路径文件中的命名登录路径中读取选项。 “登录路径”是一个选项组,其中包含一些选项,这些选项指定要连接到哪个 MySQL 服务器以及要作为身份验证的帐户。要创建或修改登录路径文件,请使用mysql_config_editorUtil。参见第 4.6.6 节“ mysql_config_editor-MySQL 配置 Util”。
有关此选项和其他选项文件选项的更多信息,请参见第 4.2.2.3 节“影响选项文件处理的命令行选项”。
用于 Client 端/服务器通信的缓冲区的最大大小。默认值为 16MB,最大为 1GB。
使用--safe-updates时联接中行的自动限制。 (默认值为 1,000,000.)
- --named-commands,
-G
启用命名的mysql命令。允许使用长格式命令,而不仅仅是短格式命令。例如,quit
和\q
都被识别。使用--skip-named-commands禁用命名命令。参见第 4.5.1.2 节“ mysqlClient 端命令”。
TCP/IP 和套接字通信的缓冲区大小。 (默认值为 16KB.)
- --no-auto-rehash,
-A
与--skip-auto-rehash
具有相同的效果。请参阅--auto-rehash的说明。
- --no-beep,
-b
发生错误时请勿发出哔声。
不要读取任何选项文件。如果由于从选项文件中读取未知选项而导致程序启动失败,则可以使用--no-defaults来防止读取它们。
exception 是在所有情况下都读取.mylogin.cnf
文件(如果存在)。这样即使在使用--no-defaults的情况下,也可以通过比命令行更安全的方式指定密码。 (.mylogin.cnf
由mysql_config_editorUtil 创建。请参见第 4.6.6 节“ mysql_config_editor-MySQL 配置 Util”。)
有关此选项和其他选项文件选项的更多信息,请参见第 4.2.2.3 节“影响选项文件处理的命令行选项”。
- --one-database,
-o
除了默认数据库是命令行上命名的数据库时发生的语句以外,请忽略这些语句。此选项是基本的,应谨慎使用。语句过滤仅基于USE条语句。
最初,mysql在 Importing 中执行语句,因为在命令行上指定数据库* db_name
*等效于在 Importing 的开头插入USE db_name。然后,对于遇到的每个USE语句,mysql接受还是拒绝以下语句,具体取决于命名数据库是命令行上的那个数据库。声明内容无关紧要。
假设调用mysql来处理以下语句集:
DELETE FROM db2.t2;
USE db2;
DROP TABLE db1.t1;
CREATE TABLE db1.t1 (i INT);
USE db1;
INSERT INTO t1 (i) VALUES(1);
CREATE TABLE db2.t1 (j INT);
如果命令行为mysql --force-一个数据库 db1,则mysql将按以下方式处理 Importing:
-
因为默认数据库是
db1
,所以执行了DELETE语句,即使该语句为另一个数据库中的 table 命名。-
因为默认数据库不是
db1
,所以不执行DROP TABLE和CREATE TABLE语句,即使这些语句在db1
中命名了一个 table。 -
执行INSERT和CREATE TABLE语句是因为默认数据库是
db1
,即使CREATE TABLE语句为另一个数据库中的 table 命名。
-
使用给定命令进行分页查询输出。如果省略该命令,则默认的寻呼机是PAGER
环境变量的值。有效的传呼机是 less , more , cat [> filename] 等。此选项仅在 Unix 上且仅在交互模式下有效。要禁用分页,请使用--skip-pager。 第 4.5.1.2 节“ mysqlClient 端命令”,进一步讨论输出分页。
- --password[=password],
-p[password]
用于连接服务器的 MySQL 帐户的密码。密码值是可选的。如果未给出,mysql提示 Importing 一个。如果提供,则--password=或-p
与后面的密码之间必须没有空格。如果未指定密码选项,则默认为不发送密码。
在命令行上指定密码应该被认为是不安全的。为避免在命令行上 Importing 密码,请使用选项文件。参见第 6.1.2.1 节,“最终用户密码安全准则”。
要明确指定没有密码并且mysql不应提示 Importing 密码,请使用--skip-password选项。
- --pipe,
-W
在 Windows 上,使用命名管道连接到服务器。仅当服务器在启用了named_pipe系统变量的情况下启动以支持命名管道连接时,此选项才适用。此外,构建连接的用户必须是named_pipe_full_access_group系统变量指定的 Windows 组的成员。
在其中查找插件的目录。如果--default-auth选项用于指定身份验证插件,但mysql找不到它,请指定此选项。参见第 6.2.13 节“可插入身份验证”。
- --port=port_num,
-P port_num
对于 TCP/IP 连接,使用的端口号。
打印程序名称及其从选项文件中获取的所有选项。
有关此选项和其他选项文件选项的更多信息,请参见第 4.2.2.3 节“影响选项文件处理的命令行选项”。
将提示设置为指定的格式。默认值为mysql>
。提示可以包含的特殊序列在第 4.5.1.2 节“ mysqlClient 端命令”中描述。
用于连接到服务器的传输协议。当其他连接参数通常导致使用您想要的协议以外的协议时,此功能很有用。有关允许值的详细信息,请参见第 4.2.5 节“连接传输协议”。
- --quick,
-q
不要缓存每个查询结果,在接收到每一行时将其打印出来。如果输出被挂起,这可能会降低服务器的速度。使用此选项,mysql不使用历史记录文件。
- --raw,
-r
对于 table 格输出,列周围的“装箱”使一个列值可以与另一个列值区分开。对于非 table 格输出(例如以批处理方式生成或在提供--batch或--silent选项时生成),特殊字符将在输出中转义,以便可以轻松识别它们。换行符,制 table 符,NUL
和反斜杠分别写为\n
,\t
,\0
和\\
。 --raw选项禁用此字符转义。
下面的示例演示 table 格格式输出与非 table 格格式输出以及使用原始模式禁用转义:
% mysql
mysql> SELECT CHAR(92);
+----------+
| CHAR(92) |
+----------+
| \ |
+----------+
% mysql -s
mysql> SELECT CHAR(92);
CHAR(92)
\\
% mysql -s -r
mysql> SELECT CHAR(92);
CHAR(92)
\
如果与服务器的连接丢失,则自动尝试重新连接。每次断开连接都会进行一次重新连接尝试。要抑制重新连接行为,请使用--skip-reconnect。
如果启用此选项,则不使用WHERE
子句或LIMIT
子句中的键的UPDATE和DELETE语句将产生错误。此外,对产生(或估计产生)非常大的结果集的SELECT语句施加了限制。如果已在选项文件中设置此选项,则可以在命令行上使用--skip-safe-updates来覆盖它。有关此选项的更多信息,请参见使用安全更新模式(-安全更新)。
不要以旧(4.1 之前)格式向服务器发送密码。这样可以防止除使用较新密码格式的服务器以外的其他连接。
从 MySQL 5.7.5 开始,此选项已被弃用,并将在以后的 MySQL 版本中删除。它始终处于启用状态,尝试禁用它(--skip-secure-auth,--secure-auth=0)会产生错误。在 MySQL 5.7.5 之前,此选项默认为启用,但可以禁用。
Note
使用 4.1 之前的哈希方法的密码比使用本地密码哈希方法的密码安全性较低,应避免使用。不建议使用 4.1 之前的密码,并在 MySQL 5.7.5 中删除了对它们的支持。有关帐户升级的说明,请参阅第 6.4.1.3 节“迁移到 4.1 版之前的密码哈希和 mysql_old_password 插件”。
使用--safe-updates时对SELECT条语句的自动限制。 (默认值为 1,000.)
PEM 格式的文件的路径名,其中包含服务器用于基于 RSA 密钥对的密码交换所需的公用密钥的 Client 端副本。此选项适用于使用sha256_password
或caching_sha2_password
身份验证插件进行身份验证的 Client 端。对于未通过这些插件之一进行身份验证的帐户,将忽略此选项。如果不使用基于 RSA 的密码交换,也将被忽略,例如 Client 端使用安全连接连接到服务器时。
仅当使用 OpenSSL 构建 MySQL 时,此选项才可用。
有关sha256_password
和caching_sha2_password
插件的信息,请参见第 6.4.1.5 节“ SHA-256 可插拔身份验证”和第 6.4.1.4 节“缓存 SHA-2 可插入身份验证”。
在 Windows 上,共享内存名称,用于使用共享内存与本地服务器构建的连接。默认值为MYSQL
。共享内存名称区分大小写。
仅当在启用了shared_memory系统变量以支持共享内存连接的情况下启动服务器时,此选项才适用。
导致在每个语句之后显示警告。此选项适用于交互式和批处理模式。
忽略SIGINT
signal(通常是 Importing Control C 的结果)。
如果没有此选项,则 Importing Control C 会中断当前语句(如果存在),否则将取消任何部分 Importing 行。
- --silent,
-s
静音模式。产生较少的输出。可以多次指定此选项,以产生越来越少的输出。
此选项导致非 table 格输出格式和特殊字符的转义。可以通过使用原始模式来禁用转义。请参阅--raw选项的说明。
不要在结果中写入列名。
不要为错误写行号。当您想要比较包含错误消息的结果文件时很有用。
- --socket=path,
-S path
对于到localhost
的连接(要使用的 Unix 套接字文件),或者在 Windows 上,要使用的命名管道的名称。
在 Windows 上,仅当在启用了named_pipe系统变量以支持命名管道连接的情况下启动服务器时,此选项才适用。此外,构建连接的用户必须是named_pipe_full_access_group系统变量指定的 Windows 组的成员。
以--ssl
开头的选项指定是否使用 SSL 连接到服务器,并指示在何处查找 SSL 密钥和证书。参见加密连接的命令选项。
- --syslog,
-j
此选项使mysql将交互式语句发送到系统日志记录工具。在 Unix 上,这是syslog
;在 Windows 上,它是 Windows 事件日志。记录的消息出现的目的地取决于系统。在 Linux 上,目标通常是/var/log/messages
文件。
这是在 Linux 上使用--syslog
生成的输出示例。格式化此输出以提高可读性;每条记录的消息实际上只占一行。
Mar 7 12:39:25 myhost MysqlClient[20824]:
SYSTEM_USER:'oscar', MYSQL_USER:'my_oscar', CONNECTION_ID:23,
DB_SERVER:'127.0.0.1', DB:'--', QUERY:'USE test;'
Mar 7 12:39:28 myhost MysqlClient[20824]:
SYSTEM_USER:'oscar', MYSQL_USER:'my_oscar', CONNECTION_ID:23,
DB_SERVER:'127.0.0.1', DB:'test', QUERY:'SHOW TABLES;'
有关更多信息,请参见第 4.5.1.3 节“ mysqlClient 端记录”。
- --table,
-t
以 table 格格式显示输出。这是交互使用的默认值,但可用于以批处理方式生成 table 输出。
将输出副本追加到给定文件。此选项仅在交互模式下有效。 第 4.5.1.2 节“ mysqlClient 端命令”,进一步讨论 tee 文件。
加密连接允许的 TLS 协议。该值是一个或多个逗号分隔的协议名称的列 table。可以为此选项命名的协议取决于用于编译 MySQL 的 SSL 库。有关详细信息,请参见第 6.3.2 节“加密的连接 TLS 协议和密码”。
MySQL 5.7.10 中添加了此选项。
- --unbuffered,
-n
每次查询后刷新缓冲区。
- --user=user_name,
-u user_name
用于连接到服务器的 MySQL 帐户的用户名。
- --verbose,
-v
详细模式。产生有关程序功能的更多输出。可以多次指定此选项以产生越来越多的输出。 (例如,-v -v -v
即使在批处理模式下也会产生 table 输出格式.)
- --version,
-V
显示版本信息并退出。
- --vertical,
-E
垂直打印查询输出行(每列值一行)。如果没有此选项,则可以通过以\G
终止单个语句来指定垂直输出。
- --wait,
-w
如果无法构建连接,请 await 并重试,而不是中止。
- --xml,
-X
产生 XML 输出。
<field name="column_name">NULL</field>
--xml与mysql一起使用时的输出与mysqldump --xml的输出匹配。有关详细信息,请参见第 4.5.4 节“ mysqldump-数据库备份程序”。
XML 输出还使用 XML 名称空间,如下所示:
shell> mysql --xml -uroot -e "SHOW VARIABLES LIKE 'version%'"
<?xml version="1.0"?>
<resultset statement="SHOW VARIABLES LIKE 'version%'" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<row>
<field name="Variable_name">version</field>
<field name="Value">5.0.40-debug</field>
</row>
<row>
<field name="Variable_name">version_comment</field>
<field name="Value">Source distribution</field>
</row>
<row>
<field name="Variable_name">version_compile_machine</field>
<field name="Value">i686</field>
</row>
<row>
<field name="Variable_name">version_compile_os</field>
<field name="Value">suse-linux-gnu</field>
</row>
</resultset>