PanMichael
作者PanMichael·2019-06-25 15:45
软件架构设计师·兴业数金

Mysql瓶颈分析方法实践

字数 599阅读 4882评论 1赞 3

数据库往往会成为应用的最终瓶颈,而Mysql是被使用得最多的开源关系型数据库。如何分析执行Mysql数据库语句的性能就非常重要。但是很多开发人员并没有相关的意识与能力,但其实掌握了一些简单的常用手段,就可以让我们自己分析出数据库语句的问题。曾经看到过有对数据库查询语句中出现7个Select的语句,当时完全被震惊到了,这根本就是往系统里注入了一个大雷呀,数据量一旦增多,数据库挂,应用挂,服务挂,客户挂,公司挂。。。。还是不做破了一个鸡蛋就想着毁了一个养鸡场的推断了。我们收集下常见的数据库的分析手段。

1、查看当前数据库执行命令:
k9l4y8nmlk

k9l4y8nmlk

2、慢查询
查看慢查询时间定义
nnms6ml0uh

nnms6ml0uh

开启“慢查询”记录功能
jwk68urpyk

jwk68urpyk

设置慢日志导出方式为Table或者File
0ysuur6lix

0ysuur6lix

3、explain输出执行计划对sql进行分析
hx0czsrhasn

hx0czsrhasn

出现以下结果就需要优化了:

出现了Using temporary;
rows过多,或者几乎是全表的记录数;
key 是 (NULL);
possible_keys 出现过多(待选)索引。

4、soar小米SQL分析工具
SOAR(SQL Optimizer And Rewriter)是一个对SQL进行优化和改写的自动化工具。 由小米人工智能与云平台的数据库团队开发与维护。

5、查看是否有锁表
u926rugyc3f

u926rugyc3f

作者:潘晓华Michael

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

3

添加新评论1 条评论

hn_unixhn_unix软件开发工程师ait
2019-07-08 17:37
记号,不错不错。
Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广