笔记
在 MySQL Shell 8.0.30 中已弃用。对于 MySQL Shell 8.0.30 及以上版本中的 SQL 日志记录,请参阅 第 12.4 节 “MySQL Shell SQL 日志记录”。
从 MySQL Shell 8.0.18 开始,您可以将 AdminAPI 操作过程中执行的 SQL 语句包含在 MySQL Shell 日志记录信息中。默认情况下,MySQL Shell 不记录这些语句,只记录操作过程中返回的消息。激活这些语句的日志记录可以让您观察 SQL 执行方面的操作进度,这有助于诊断任何错误。
当您从 AdminAPI 操作激活 SQL 语句的日志记录时,这些语句将作为信息性消息写入 MySQL Shell 应用程序日志文件,前提是日志记录级别设置为 5(这是 MySQL Shell 日志记录级别的默认值)或更高。如果使用日志记录级别指定了其他可见位置,则语句也会发送到那里。如果 verbose 选项设置为 1 或以上,这些语句也会作为详细输出发送到控制台。 SQL 语句中包含的任何密码都会被屏蔽以进行记录和显示,并且不会被记录或显示。
dba.deploySandboxInstance()
AdminAPI 沙箱操作( 、 dba.startSandboxInstance()
、 dba.stopSandboxInstance()
、 dba.killSandboxInstance()
和 ) 执行的 SQL 语句dba.deleteSandboxInstance()
始终从日志记录和详细输出中排除,即使您已激活常规 AdminAPI 操作的日志记录也是如此。
要记录 AdminAPI 操作执行的 SQL 语句,请选择以下选项之一:
--dba-log-sql
启动 MySQL Shell 时 使用命令行选项。- 使用 MySQL Shell
\option
命令设置dba.logSql
MySQL Shell 配置选项。有关使用此命令的说明,请参见 第 13.4 节 “配置 MySQL Shell 选项”。 - 使用该
shell.options
对象设置dba.logSql
MySQL Shell 配置选项。有关使用此配置界面的说明,请参见第 13.4 节 “配置 MySQL Shell 选项”。
该选项的可用设置如下:
-
0
不记录 AdminAPI 操作执行的 SQL 语句。如果未在命令行或配置文件中设置该选项,则此设置是默认行为,并且如果您只是暂时需要,可以设置为在使用后停用此类日志记录。
-
1
SELECT
记录 AdminAPI 操作执行的 SQL 语句,但语句、SHOW
语句和沙箱操作执行的语句 除外 。 -
2
完整记录常规 AdminAPI 操作执行的 SQL 语句,包括
SELECT
和SHOW
语句,但不记录沙箱操作执行的语句。
如果指定不带值的选项(在启动 MySQL Shell ( ) 时允许命令行选项使用,--dba-log-sql
但不允许使用其他设置选项的方法),则使用设置 1。