
参考资料:https://dev.mysql.com/doc/refman/5.7/en/server-logs.html
mysql 常见日志分为以下几种:
| 日志类型 | 日志内容 |
|---|---|
| 错误日志 | mysql 启动、中止和运行过程中出现的异常 |
| 常规操作日志 | 已创立用户端连接和用户端解决记录 |
| 二进制日志 | 数据变更日志(可用于同步) |
| 转存日志 | 从主服务器同步的数据记录 |
| 慢查询日志 | 耗时超过 long_query_time 所设置时间的查询 |
| DDL日志(元日志) | ddl 语句执行的元数据操作 |
MySQL 默认情况下所有日志均为关闭状态,默认位置均为 mysql 的 data 目录下
此部分详情常用的日志配置项,所有配置项请参考:https://dev.mysql.com/doc/refman/5.7/en/replication-options-slave.html#option_mysqld_relay-log
主要记录 mysql 启动、中止和运行过程中出现的异常,与其关联的配置项包括:
常规操作日志可以说是内容最全的日志,包括所有 mysql 所作的操作和连接情况。因为此类日志记录内容较多,所以对数据库性能会有肯定的影响,所以在生产环境中不建议开启,与其相关的配置项如下:
即便mysql运行过程中也可以通过命令行设置以上两个参数修改日志。
SET GLOBAL general_log = 'ON';
二进制日志可以说是使用率最高的日志了,由于可以通过它对数据库进行回复,所以建议在生产环境上启用。二进制日志无法直接打开,不过 mysql 本身提供了 mydqlbinlog 程序用于查看(具体查看方法参考https://www.songma.com/p/b30264768d04)。与其相关的参数如下:
转存日志可以了解为一种特殊的二进制日志,其特殊在此日志中记录的是主从关系中,从数据库从主数据库同步过来的数据。作为一种二进制日志,同样可以使用 mysqlbinlog 程序进行查看,与其相关的配置参数包括:
慢查询日志在调优过程中使用的比较多,其中主要记录的是执行较慢的操作,具体时间可通过参数进行设置。与其相关的配置项如下:
慢查询日志不肯定非要看日志文件,通过 mysqldumpslow 命令可在控制台直接查看。