数据管理服务DAS 之 数据库自动化运维功能展播4:慢SQL

举报
数据库小管家 发表于 2020/03/06 14:52:51 2020/03/06
【摘要】 概述数据库优化点很多,但最常见、也最容易影响性能的一大因素,就是慢SQL!在慢SQL的发现以及优化上,也一直是DBA比较头疼的问题,尤其对于使用自建数据库的企业DBA来说,这更加是一个长期而且艰苦的斗争。而对于华为云RDS数据库,发现和优化慢SQL,不再是只有DBA才可以干的事情,普通的开发人员,也可以轻松应对!接下来将重点介绍一下华为云的数据管理服务DAS,是如何帮助用户快速发现、自动优化...

概述

数据库优化点很多,但最常见、也最容易影响性能的一大因素,就是慢SQL!

在慢SQL的发现以及优化上,也一直是DBA比较头疼的问题,尤其对于使用自建数据库的企业DBA来说,这更加是一个长期而且艰苦的斗争。


而对于华为云RDS数据库,发现和优化慢SQL,不再是只有DBA才可以干的事情,普通的开发人员,也可以轻松应对!

接下来将重点介绍一下华为云的数据管理服务DAS,是如何帮助用户快速发现、自动优化慢SQL的。

DAS提供的慢SQL能力

1、图表展示慢SQL的数量趋势曲线,同时也给出CPU占用率曲线,可以直观的定位到慢SQL导致CPU飙高的问题;

2、对慢SQL进行模板化汇总,可以根据 执行次数、耗时、锁等待时间、扫描行数、返回行数等指标进行排序,快速找出TOP N的慢SQL;

3、可以查看每一条慢SQL的具体SQL内容、执行时间、客户端IP等信息;

4、能够自动的对慢SQL进行诊断,给出索引优化建议、SQL改写建议,帮助开发者对SQL进行自助优化;

具体使用方法

1、登录华为云,打开DAS Console:

https://console.huaweicloud.com/das


2、点击左侧菜单 云DBA-->慢SQL,并选择要分析的RDS实例:

slow_log_1.PNG


3、开启 慢SQL开关,注意,这里一定要先打开这个开关,DAS才会对您的慢SQL进行收集、统计和分析,千万别忘记哦~~

slow_log_2.png


4、统计信息,对SQL进行了模板归类,可以很容易的排查出是哪一类的SQL,发生的次数最多;除此以外,还提供了多种排序选项:

执行次数、平均\最大执行时间、平均\最大锁等待时间、平均\最大扫描行数、平均\最大返回行数

slow_log_3.PNG


5、最右侧的操作栏,点击 样本 按钮,可以查看这个SQL模板下,真实的一个SQL完整内容;而诊断按钮,则提供了对这个慢SQL的自动诊断能力,包括索引优化建议、SQL语句优化建议,友情提醒一下,这里可是DAS的专家DBA团队,将华为云DBA的多年线上慢SQL问题分析经验,沉淀到产品中的输出哦。

slow_log_4.PNG


6、您还可以直接对这些慢SQL信息,导出到本地进行存档:

slow_log_5.PNG


7、最后,该功能也提供了慢SQL明细的内容展示,除了执行数据,还展示了执行的客户端来源IP、数据库登录账号等信息;

slow_log_6.PNG


常见问题

1、该功能是所有RDS实例都可以使用吗?

否。

目前支持MySQL数据库, 5.6的版本要>= 5.6.43.3,5.7的版本要>= 5.7.25.3;如果您的MySQL版本较低,可以在RDS控制台进行实例版本升级哦


2、开启慢SQL后,会影响实例的磁盘空间吗?

会占用很少一部分空间,因为DAS会周期性的(频率小于10分钟1次)进行采集,采集完了以后,会对原数据文件进行删除,所以不会占用您很多实例的磁盘空间,可放心使用


3、支持ECS自建库吗?

不支持。

目前该功能,是华为云MySQL内核团队进行了内核优化之后的版本,额外增加了很多指标数据的输出,社区版的ECS自建库没有这个能力


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。