你的位置:首页 > 数据库

[数据库]如何获取有性能问题的SQL


1.通过用户反馈获取存在性能问题的SQL.

 

2.通过慢查日志获取存在性能的SQL.

 

启动慢查日志

slow_query_log=on

 

set global slow_query_log=on;

image

slow_query_log_file 指定慢查日志存储路径及文件

默认情况保存在mysql的数据目录中,最好日志存储和数据存储分开。

long_query_time

image

指定记录慢查日志SQL执行时间的阀值,单位为秒,默认值为10秒。精确到微秒,

如果为一毫秒这个值为 0.001 。

记录的语句包括

1.查询语句

2.数据修改语句

3.已经回滚的SQL

 

log_queries_not_using_indexes 是否记录未使用索引的SQL

 

慢查日志中记录的内容:

image

第一行记录了:

用户信息,线程ID号 用户信息 sbtest ,线程ID为 17

第二行 :记录了查询时间

第三行 :锁的时间

第四行 : 返回的记录行数

第五行: 扫描的行数

第六行 : 执行的时间

第七行 : 执行的语句

 

常用慢查询日志分析工具

1.mysqldumpslow

汇总除查询条件外其他完全相同的SQL,并将分析结果按照参数中指定的顺序输出。

mysqldumpslow –s r –t 10 slow.log

-s order (c,t,l,r,at,al,ar)

c: 总的次数

t:总的时间

l:锁的时间

r: 总数据行

at,al,ar: t,l,r 的平均数

at 总时间 /总次数

 

-t top 指定取前几条作为结果输出

 

2.pt-query-digest

pt-query-digest –explain -h=127.0.0.1,u=root,p=root slow.log>slow.report

可以包括执行计划。

 

3.实时获取性能的问题的SQL

 

image

 

select id,user,host,db,command ,time,state,info from information_schema.processlist where time>60;

查询服务器中查询时间超过60秒的SQL.




海岛旅游哪里好玩海岛旅游行程深圳到海岛旅游深圳去海岛旅游报价办理海岛旅游签证2015春节英德仙桥地下河有哪些玩的?仙桥地下河春节玩什么? 2015春节蓝田瑶族风情园有哪些好玩的?龙门蓝田瑶族风情园春节有什么活动? 2015春节台山下川岛航班安排?台山上川岛春节开门吗? 2015牛鱼嘴禾雀花开了吗?清远牛鱼嘴禾雀花盛花期是几月? 霜降秋风起 开启津城赏菊模式 锦绣中华万圣节时间?深圳锦绣中华万圣节活动安排? 小长假不虚度 来辽宁感受“蒸爷”气息 深圳锦绣中华万圣节刺激吗?锦绣中华万圣节门票价格? 广东中山影视城门票多少钱?中山影视城有没有学生票? 大学城广东科学馆团购价格?大学城广东科学中心门票怎么预订? 大学城广东科学馆地址?大学城广东科学中心乘车路线? DFS集团T广场于铜锣湾希慎广场盛大开幕 百色澄碧湖桃花岛在哪里?澄碧湖一日游攻略? 深圳西丽动物园门票团购优惠吗?西丽动物园优惠票多少钱? 风云变幻的中国华北"66号公路" 广西百色澄碧湖水库要门票吗?澄碧湖门票多少钱? Q65110A7846 Datasheet Q65110A7846 Datasheet Q65110A7848 Datasheet Q65110A7848 Datasheet Q65110A7849 Datasheet Q65110A7849 Datasheet l签注 l签注 l签注 博鳌在哪 博鳌在哪 博鳌在哪 清远老虎谷漂流 清远老虎谷漂流 清远老虎谷漂流