mysql 日志

󰃭 2020-11-01

mysql 中日志文件类型如下:

  1. 错误日志 error log 查看错误日志目录方式: show VARIABLES LIKE ‘log_error’\G; 各种数据库错误,以及需要优化的提示,可以查看错误日志文件。

  2. 二进制日志 binlog

  3. 慢查询日志 slow query log show VARIABLES LIKE ‘long_query_time’\G; 慢查询日志可以帮助定位可能存在问题的sql语句,从而进行sql 语句优化,可以在mysql 启动时设置一个阈值,将运行时间超过该值的所有sql语句记录到慢查询日志文件中。 在默认情况下数据库不启动慢查询日志,用户需要手工将这个参数设置为ON。(直接修改配置文件添加如下配置,重启mysql) slow_query_log = ON slow_query_log_file = /var/log/mysql/slow_query.log long_query_time = 5
    如果希望得到执行时间最长的10条sql语句: mysqldumpslow -s al -n 10 slow.log // 直接在命令行执行,不是在sql 环境 在5.1 以后版本中,慢查询日志可以存放在一张表中mysql.slow_log 中。默认是存放在文件中,可以通过设置参数把慢查询日志放到表中。 show VARIABLES LIKE ‘log_output’\G; // 查询慢日志存放方式 set GLOBAL log_output=’TABLE’ // 设置慢日志存放到表中 ‘FILE’是存放到文件

log_queries_not_using_indexes = ON // 如果语句没有使用索引,则会记录到慢查询日志中 5.6.6 版本新增 log_throttle_queries_not_using_indexes,用来标示每分钟允许记录到slow log 的且未使用索引的sql语句次数。(避免大量sql语句记录到日志中,DBA 可调整该参数)

  1. 查询日志 log