MySQL 8.0 参考手册  / 第 5 章 MySQL 服务器管理  /  5.4 MySQL 服务器日志

5.4 MySQL 服务器日志

MySQL Server 有几个日志可以帮助您找出正在发生的活动。

日志类型 写入日志的信息
错误日志 启动、运行或停止 mysqld时遇到的问题
一般查询日志 已建立的客户端连接和从客户端收到的语句
二进制日志 更改数据的语句(也用于复制)
中继日志 从复制源服务器接收到的数据更改
慢查询日志 执行时间超过 long_query_time几秒的查询
DDL日志(元数据日志) DDL 语句执行的元数据操作

默认情况下,除 Windows 上的错误日志外,不启用任何日志。(DDL 日志总是在需要时创建,并且没有用户可配置的选项;请参阅第 5.4.6 节,“DDL 日志”。)以下特定于日志的部分提供了有关启用日志记录的服务器选项的信息。

默认情况下,服务器在数据目录中为所有启用的日志写入文件。您可以通过刷新日志强制服务器关闭并重新打开日志文件(或者在某些情况下切换到新的日志文件)。FLUSH LOGS发出语句时会刷新日志 ;使用 or参数执行 mysqladmin ;或者使用 or 选项执行 mysqldump 。参见 第 13.7.6.3 节,“FLUSH 语句”第 4.5.2 节,“mysqladmin——一个 MySQL 服务器管理程序”,和 第 4.5.4 节,“mysqldump——一个数据库备份程序”。此外,当二进制日志的大小达到 flush-logsrefresh--flush-logs--master-datamax_binlog_size系统变量。

您可以在运行时控制一般查询和慢查询日志。您可以启用或禁用日志记录,或更改日志文件名。您可以告诉服务器将一般查询和慢速查询条目写入日志表、日志文件或两者。有关详细信息,请参阅 第 5.4.1 节,“选择通用查询日志和慢速查询日志输出目标”第 5.4.3 节,“通用查询日志”第 5.4.5 节,“慢速查询日志”

中继日志仅用于副本服务器,以保存来自源服务器的数据更改,这些更改也必须在副本服务器上进行。有关中继日志内容和配置的讨论,请参阅 第 17.2.2.1 节,“中继日志”

有关旧日志文件过期等日志维护操作的信息,请参阅第 5.4.7 节,“服务器日志维护”

有关保持日志安全的信息,请参阅 第 6.1.2.3 节,“密码和日志记录”