慢查询日志由 long_query_time 执行时间超过几秒钟并且至少 min_examined_row_limit 需要检查行的 SQL 语句组成 。慢查询日志可用于查找需要很长时间执行的查询;因此可以进行优化。但是;检查长而缓慢的查询日志可能是一项耗时的任务;
mysql long_query_time: 默认值是 10 秒 ;
登录mysql终端查看慢日志是否开启;show variables like %quer%; 默认是关闭状态;
开始慢日志有两种返方式。;我们用第二种演示;修改后查看状态;
可以直接修改 my.cnf 文件;永久有效;终端执行此命令; set global slow_query_log=1; MySQL重启后则会失效;
这边你也可以自定义慢日志文件地址;set global slow_query_log_file=‘路径名’;来设置你的慢查询日志想要存放的地址;我一般都使用默认的地址;
开启慢日志;什么样的 SQL 语句会被记录到日志中全部取决于 long_query_time ;默认时间是 10 秒。
show variables like ;long_query_time;;
我们也可以去修改这个时间 ;设置阀值;set global long_query_time = 5;
set global long_query_time = 5;
我们可以发现修改后没有改变;这是为什么?是因为使用命令行操作的需要;断开当前会话窗口重新连接mysql, 再查看就好了;
最后可以用终端方式查看慢查询记录;可以使用系统变量 show global status like %slow_queries%;
然后去看慢日志文件具体数据;就OK了;vim /usr/local/var/mysql/SuperBoss-slow.log ( 我的慢日志文件路径 !)