数据库性能优化和监控是数据库管理和开发人员必须关注的重要任务。数据库自治服务DAS(Database Autonomy Service)的性能洞察(新版)通过MySQL的performance_schema能力汇聚SQL信息,及时发现性能问题,并提供治理方案,提升数据库系统的性能和稳定性。此外,还支持统计无流量表和无流量索引数据,帮助您判断和清理这些数据,以提高存储利用率和数据库性能。
前提条件
数据库实例为:
RDS MySQL
说明不支持RDS MySQL基础系列。
不支持RDS MySQL 5.5。
MyBase MySQL
PolarDB MySQL版
数据库实例内存需要大于等于8 GB。
数据库实例需要开启performance_schema,开启方法请参见启用Performance Schema。
说明开启Performance_schema会对数据库实例的资源会产生一定的消耗,详情请参见Performance Schema压力测试报告。
数据库实例的地域为:华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华南1(深圳)、西南1(成都)、中国(香港)、新加坡、马来西亚(吉隆坡)和印度尼西亚(雅加达)。
计费
性能洞察(新版)正在火热公测中,公测期间暂不收费。
功能介绍
性能洞察(新版)功能基于MySQL的performance_schema能力,汇聚SQL信息,帮助您评估目标数据库负载情况,找到性能问题的源头。
快速定位所有SQL的资源消耗、执行次数、扫描行数和执行耗时。
支持查看目标数据库不同指标的性能趋势和目标SQL的详细信息。
支持通过SQL ID和关键词查询目标SQL的详细信息。
支持查看目标SQL的资源消耗、执行次数、扫描行数和执行耗时趋势,以及SQL样本信息。
支持对目标SQL进行限流和优化。
支持对比查看不同时间段中所有SQL的资源消耗、执行次数、扫描行数和执行耗时,并且支持对比查看对不同时段中目标SQL的详细指标。
支持查看无流量表和无流量索引。DAS会在每天凌晨采集表和索引的使用数据,判断表和索引是否还在使用中,并统计表和索引无流量的天数。
说明无流量天数的最小设置为7天。即在开启无流量表和索引识别后,需要至少7天才能查看数据库中的无流量表和无流量索引数据。
相比旧版功能,新版功能提供更加丰富的指标维度和查看方式:
对比项 | 性能洞察(新版) | |
指标维度 |
|
|
查看方式 |
| 支持查看指定段内目标SQL的指标趋势和详细信息。 |
治理方案 | 支持对目标SQL进行限流和优化。 | 支持对目标SQL进行优化。 |
支持的数据库引擎 | 目前支持RDS MySQL、PolarDB MySQL版和MyBase MySQL。 | 目前支持RDS MySQL、RDS PostgreSQL、PolarDB MySQL版、PolarDB PostgreSQL版、MyBase MySQL和PolarDB PostgreSQL版(兼容Oracle)。 |
操作步骤
登录DAS控制台。
在左侧导航栏中,单击实例监控。
找到目标实例,单击实例ID,进入目标实例详情页。
在左侧导航栏中,单击性能洞察。
在性能洞察页签,单击开启性能洞察。
如果您未按照前提条件开启performance_schema,控制台界面会跳出参数设置对话框,请依照界面提示单击去设置按钮,参照启用Performance Schema设置performance_schema相关参数。
警告修改这些参数,需要重启数据库实例,建议您在业务低峰期操作,并确保应用程序具有重连机制。
开启性能洞察时,系统会默认开启无流量表和无流量索引识别功能。
重要性能洞察从2023年04月11日起新增无流量表和无流量索引识别功能,开启性能洞察的实例会自动开启无流量表和无流量索引识别。2023年04月11日前已开启性能洞察的实例,可以在服务设置中手动开启无流量表/索引识别。
在性能洞察页面,根据需要选择对应的功能页签:
区间查看:
选择需要查看性能洞察结果的时间范围,您可以查看选定时间范围内所有SQL的资源消耗、执行次数、扫描行数和执行耗时趋势图。
说明选择时间范围时,查询结束时间需晚于查询开始时间,最多可查看最近一个月内任意七天的数据。
单击导出,可以将SQL信息保存到本地查看。
单击更多指标,查看重要指标的趋势图。
说明您可以单击设置,在指标区域选择需要显示趋势图的指标。
在SQL列表区域,查看SQL的详细信息。
说明您可以单击设置,在列设置区域选择需要展示在列表中的统计指标。
单击目标SQL ID,查看该SQL选定时间范围内的资源消耗、执行次数、扫描行数和执行耗时趋势图,并支持查看SQL样本信息。
单击目标SQL操作列的样本,查看该SQL的样本信息。
单击目标SQL操作列的限流,在SQL限流页面配置限流参数,对目标SQ进行限流。详细操作请参见SQL限流。
单击目标SQL操作列的优化,在弹出的SQL诊断优化对话框中,查看SQL诊断结果。
若您采纳诊断建议,单击页面右上角的复制,并将优化后的SQL粘贴到数据库客户端或DMS上执行,若不采纳诊断建议,可直接单击取消结束诊断。
说明DAS会根据SQL的复杂程度、对应表的数据量、数据库负载等进行SQL诊断,诊断建议的返回时间可能会超过20秒。完成诊断后,SQL诊断引擎会给出诊断结果、优化建议和预期优化收益,您可以根据诊断结果确认是否采纳建议。
您也可以单击专家服务,付费购买数据库专家服务,为您提供云数据库产品本身能力范围之外的专业的数据库专家服务,主要包括紧急救援、健康诊断、性能调优、护航保障、数据迁移等。
对比查看:选择需要对比性能洞察结果的时间点,查看所有SQL资源消耗、执行次数、扫描行数和执行耗时的对比结果。您还可以在下方SQL列表区域查看详细的对比结果。
说明您可以单击设置,选择需要展示在列表中的统计指标。
表/索引:您可以设定筛选条件,查询符合条件的无流量表和无流量索引数据。
单击导出,将筛选出的数据保存到本地。
关闭性能洞察
登录DAS控制台。
在左侧导航栏中,单击实例监控。
找到目标实例,单击实例ID,进入目标实例详情页。
在左侧导航栏中,单击性能洞察。
在性能洞察页签,单击服务设置,关闭功能开关后,单击确定,在弹出的对话框中单击确定关闭性能洞察。
关闭性能洞察时,系统会同时关闭无流量表和无流量索引识别功能。您也可以单独关闭未开启无流量表/索引识别,关闭该功能后DAS会删除无流量表和无流量索引数据以及表和索引的使用数据。
重要关闭性能洞察功能后,DAS会停止数据采集并删除历史数据,包括无流量表和无流量索引数据以及表和索引的使用数据。
相关文档
您可以启用DAS的自治功能,实现自动治理,以应对数据库性能问题。