7.4 MySQL 服务器日志
MySQL 服务器有多个日志,可以帮助您了解活动的详细信息。
Log Type | Information Written to Log |
---|---|
错误日志 | 遇到启动、运行或停止mysqld时遇到的问题 |
一般查询日志 | 已建立的客户端连接和从客户端接收的语句 |
二进制日志 | 改变数据的语句(用于复制) |
Relay 日志 | 从复制源服务器接收的数据变化 |
慢查询日志 | 执行时间超过long_query_time 秒的查询 |
DDL 日志 | DDL 语句执行的原子操作 |
默认情况下,不启用任何日志,except 错误日志在 Windows 上。关于 DDL 日志行为的信息,请参阅Viewing DDL Logs。以下日志特定部分提供了启用日志的服务器选项信息。
默认情况下,服务器将在数据目录中写入所有启用的日志文件。您可以强制服务器关闭并重新打开日志文件(或在某些情况下切换到新日志文件),通过刷新日志。日志刷新发生在您执行FLUSH LOGS
语句时,或者使用mysqladmin与flush-logs
或refresh
参数,或者使用mysqldump与--flush-logs
或--source-data
选项。详见第15.7.8.3节,“FLUSH Statement”、第6.5.2节,“mysqladmin — A MySQL Server Administration Program”和第6.5.4节,“mysqldump — A Database Backup Program”。此外,二进制日志在其大小达到max_binlog_size
系统变量值时将被刷新。
您可以在运行时控制通用查询和慢查询日志。您可以启用或禁用日志记录,或者更改日志文件名称。您可以告诉服务器将通用查询和慢查询条目写入日志表、日志文件或两者。详见第7.4.1节,“Selecting General Query Log and Slow Query Log Output Destinations”、第7.4.3节,“The General Query Log”和第7.4.5节,“The Slow Query Log”。
复制日志仅在复制服务器上使用,以存储来自复制源服务器的数据变化,这些变化也需要在复制服务器上执行。关于复制日志内容和配置的讨论,见第19.2.4.1节,“The Relay Log”。
关于日志维护操作,如删除旧日志文件的信息,见第7.4.6节,“Server Log Maintenance”。
关于保持日志安全的信息,见第8.1.2.3节,“Passwords and Logging”。