数据管理DMS:自建MySQL数据库 全量SQL诊断功能发布啦!

摘要: MySQL的用户都面临都一个难题,异常或者故障问题难定位,很多时候都靠“猜”。 如果比较幸运,异常正在发生,我们还可以获取到会话、引擎状态等信息; 如果没有异常现场,要找到根因,除了慢日志、错误日志、性能监控外,可能就没有更多的可用信息帮助用户定位问题。

MySQL的用户都面临都一个难题,异常或者故障问题难定位,很多时候都靠“猜”。

如果比较幸运,异常正在发生,我们还可以获取到会话、引擎状态等信息;

如果没有异常现场,要找到根因,除了慢日志、错误日志、性能监控外,可能就没有更多的可用信息帮助用户定位问题。

MySQL 从5.5版本开始,就出现了performance_schema,经过5.6版本和5.7版本的改进和增强,performance_schema提供了丰富的性能和诊断相关的信息。

DMS基于performance_schema,提供用户TOP SQL和全量SQL诊断功能,用户可以通过该功能快速的定位到异常SQL。

借助TOP SQL和全量SQL诊断功能,用户同时可以在以下三个方便获得收益:

数据管理DMS:自建MySQL数据库 全量SQL诊断功能发布啦!_第1张图片

SQL列表

SQL列表展示了选定时间范围内每一类SQL的SQL文本、耗时比例、平均耗时、平均扫描行数、首次出现时间、最后出现时间等信息。

耗时比例=(该类SQL执行耗时 执行次数)/(所有SQL执行耗时 总执行次数) * 100%

所以耗时比例越高的SQL,基本上可以理解为占用MySQL资源越多的SQL,优化该SQL,可以获取的更高的收益比,以下图的场景为例:

数据管理DMS:自建MySQL数据库 全量SQL诊断功能发布啦!_第2张图片

前提条件

用户获取权限并已登录DMS控制台。

登录帐号需要performance_schema库的查询权限;

需要开启performance_schema;

show variables like 'performance_schema';

performance_schema=on;

如果处于off状态,需要在你的my.cnf文件中增加如下配置,然后重启生效;

[mysqld]

performance_schema=ON

开启statment_digest

update setup_consumers set ENABLED='YES' where name='statment_digest';

开启events_statements_history

update setup_consumers set ENABLED='YES' where name='events_statements_history';

建议开启events_statements_history_long

update setup_consumers set ENABLED='YES' where name='events_statements_history';

背景信息

目前暂时仅支持自建数据库 MySQL 5.6.24以上版本。

开启performance_schema约有10%左右的性能消耗;

DMS读取performance_schema的数据可能会产生公网流量;

操作步骤

登录DMS控制台——>选择MySQL数据库——>选择“性能”菜单——>点击“全量SQL诊断”

详细操作步骤如下:

登录DMS控制台后,界面如下图所示:

数据管理DMS:自建MySQL数据库 全量SQL诊断功能发布啦!_第3张图片

选择MySQL数据库,并单击登录数据库按钮进行登录。

如下图所示,在顶部导航栏菜单中,选择性能>全量SQL诊断;

版权声明:本文内容由互联网用户自发贡献,版权归作者所有,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:[email protected] 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

原文链接

你可能感兴趣的:(数据管理DMS:自建MySQL数据库 全量SQL诊断功能发布啦!)