本文由作者郑智辉授权网易云社区发布。 0.前言 本文通过分析线上MySQL慢查询日志,定位出现问题的SQL,进行业务场景分析,结合索引的相关使用进行数据库优化。在两次处理问题过程中,进行的思考。 1.简要描述 在九月底某个新上的游戏业务MySQL慢查询日志 第一次处理方式:在该表上添加了(recv_ ...
分类:
数据库 时间:
2018-12-11 17:17:16
阅读次数:
209
mysql慢查询日志是mysql提供的一种日志记录,它是用来记录在mysql中相应时间超过阈值的语句,就是指运行时间超过long_query_time值的sql,会被记录在慢查询日志中。long_query_time的默认值是10,意思是运行10S之上的语句。慢查询日志的设置1、查看是否开启慢查询日志命令:showvariableslike‘%slow_query_log%‘12、
分类:
数据库 时间:
2018-12-03 20:15:28
阅读次数:
207
MySQL慢查询记录日志对于跟踪PHP+MySQL体系下的MySQL负载调优问题很有用处, 比如安装了很多Discuz!插件的用户,这样可以大概排查出那些插件有代码问题。 其实启用MySQL的慢查询日志很简单,只需要在MySQL的配置文件里添加log-slow-queries和long_query_ ...
分类:
数据库 时间:
2018-11-26 02:23:40
阅读次数:
218
错误日志(默认开启,建议开启) 记录严重错误和启动关闭消息 二进制日志(默认关闭,建议开启) 记录了数据库所有的ddl语句和dml语句,用于恢复数据库、主从复制 查询日志(默认关闭,建议关闭) 记录用户的所有操作,其中还包含增删查改等信息 慢查询日志(默认关闭,建议调试性能才开启) 便于收集查询时间 ...
分类:
数据库 时间:
2018-11-25 20:44:23
阅读次数:
183
慢查询日志开启撒网模式开启了MySQL慢查询日志之后,MySQL会自动将执行时间超过指定秒数的SQL统统记录下来,这对于搜罗线上慢SQL有很大的帮助。MySQL的排序方式优化orderby语句就不得不了解mysql的排序方式。1.第一种通过有序索引返回数据,这种方式的extra显示为UsingIndex,不需要额外的排序,操作效率较高。2.第二种是对返回的数据进行排序,也就是通常看到的Usingf
分类:
数据库 时间:
2018-11-21 21:16:11
阅读次数:
287
慢日志查询概述:在生产环境中,如果要手工分析日志、查找、分析SQL,显然是个体力活,MySQL提供了日志分析工具MySQLldumpslow是什么?怎么玩?查看命令:showvariableslike‘%slow_query_log%’;showvariableslike‘%slow_query_log%‘;如何开启慢查询日志:命令:setglobalslow_query_log=
分类:
数据库 时间:
2018-11-21 21:00:05
阅读次数:
193
慢日志查询概述:在生产环境中,如果要手工分析日志、查找、分析SQL,显然是个体力活,MySQL提供了日志分析工具MySQLldumpslow是什么?怎么玩?查看命令:showvariableslike‘%slow_query_log%’;showvariableslike‘%slow_query_log%‘;如何开启慢查询日志:命令:setglobalslow_query_log=
分类:
数据库 时间:
2018-11-21 20:59:34
阅读次数:
212
一:redis慢查询日志编辑配置文件/etc/redis.conf针对慢查询日志,可以设置两个参数,一个是执行时长,单位是微秒,另一个是慢查询日志的长度。当一个新的命令被写入日志时,最老的一条会从命令日志队列中被移除。slowlog-log-slower-than1000//单位ms,表示慢于1000ms则记录日志slowlog-max-len128//定义日志长度,表示最多存128条slowlo
分类:
Web程序 时间:
2018-11-15 00:16:41
阅读次数:
215
一、简介开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。二、参数说明slow_query_log 慢查询开启状态slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为M ...
分类:
数据库 时间:
2018-11-10 15:32:36
阅读次数:
174