Mysql日志记录慢查询的SQL

在日常开发当中,经常会遇到页面打开速度极慢的情况,通过排除,确定了,是数据库的影响,为了迅速查找具体的SQL,可以通过Mysql的日志记录方法。

-- 打开sql执行记录功能

set global log_output='TABLE'; -- 输出到表

set global log=ON; -- 打开所有命令执行记录功能general_log, 所有语句: 成功和未成功的.

set global log_slow_queries=ON; -- 打开慢查询sql记录slow_log, 执行成功的: 慢查询语句和未使用索引的语句

set global long_query_time=0.1; -- 慢查询时间限制(秒)

set global log_queries_not_using_indexes=ON; -- 记录未使用索引的sql语句

-- 查询sql执行记录

select * from mysql.slow_log order by 1; -- 执行成功的:慢查询语句,和未使用索引的语句

select * from mysql.general_log order by 1; -- 所有语句: 成功和未成功的.

-- 关闭sql执行记录

set global log=OFF;

set global log_slow_queries=OFF;

-- long_query_time参数说明

-- v4.0, 4.1, 5.0, v5.1 到 5.1.20(包括):不支持毫秒级别的慢查询分析(支持精度为1-10秒);

-- 5.1.21及以后版本 :支持毫秒级别的慢查询分析, 如0.1;

-- 6.0 到 6.0.3: 不支持毫秒级别的慢查询分析(支持精度为1-10秒);

-- 6.0.4及以后:支持毫秒级别的慢查询分析;

通过日志中记录的Sql,迅速定位到具体的文件,优化sql看一下,是否速度提升了呢?

相关链接

你可能感兴趣的:(数据库,开发,sql语句,影响,日志记录)