慢 SQL 分析

最近更新时间:2024-10-30 20:45:52

我的收藏
慢 SQL 分析从实例、 mongod 节点和 mongos 节点三个维度对慢 SQL 进行统计、抽样、聚合。慢 SQL 统计从命令模板和命令空间对慢 SQL 进行聚合分析,包括执行次数、平均执行时间、资源消耗(CPU等)、扫描和返回集合大小等,并支持查看慢 SQL 明细,帮助用户快速定位和解决慢 SQL 问题。

查看慢 SQL 统计信息

1. 登录 DBbrain 控制台
2. 在左侧导航栏,选择诊断优化,选择慢 SQL 分析页签。
3. 在页面上方选择 MongoDB 数据库类型,选择待分析的实例 ID。

4. 选择统计页签。



5. 选择查看维度。
实例维度:单击实例,查看实例维度的慢日志统计趋势图、慢日志分段耗时统计和慢日志列表。
mongod 节点维度:单击 mongod 节点,选择全节点分析或单节点节点名称,查看 mongod 节点维度的慢日志统计趋势图、慢日志分段耗时统计和慢日志列表。
mongos 节点维度:单击 mongos 节点,选择全节点分析或单节点节点名称,查看 mongos 节点维度的慢日志统计趋势图、慢日志分段耗时统计和慢日志列表。
6. 选择时间范围,支持选择当天、近5分钟、近10分钟、近1小时、近3小时、近24小时、近3天或自定义时间段(时间点最早支持选择前30天,时间段最大支持选择3天)。
7. 查看慢日志统计、慢日志分段耗时统计和慢日志列表。
慢日志统计趋势图
慢日志统计针对慢查询数量与集群最大 CPU 使用率两项指标,可快速识别所选时间段内慢查询数量持续偏高时 CPU 的使用情况,避免因慢查询数量过大引起 CPU 使用率过高,从而导致电脑卡顿或者无响应。
在趋势图中,单击存在慢日志的时间段(即柱状图),视图中会显示慢 SQL 产生的时间点和个数。
单击存在慢日志的某个时间段或拖拽鼠标选择多个时间段,慢日志分段耗时统计和慢日志列表将联动展示已选时间段的数据信息。



慢日志分段耗时统计
展示已选时间段慢日志总体耗时分布情况。
慢日志列表
按照命令空间聚合展示已选时间段慢日志。
7.1.1 通过命名空间过滤慢日志。
支持选择包含或排除,选择后可输入一个或多个命名空间。选择包含则多个命名空间关系为或,选择排除则多个命名空间关系为并。

7.1.2 查看慢日志列表。默认按总耗时降序排序。


单击某条聚合的慢日志,可在右侧弹出的面板中查看日志统计信息和明细。
统计页签:展示该类型语句在您已选时段内总耗时占比、扫描行数占比,扫描行数,及耗时分布。



明细页签:可查看详细的 SQL 执行明细信息。具体操作请参见 查看慢 SQL 明细

其中,慢日志列表还支持以下操作:
复制或查看命令模板:鼠标悬停至命令模板所在行,单击复制查看
单击列表表头参数项支持按照升序或降序排序:包括执行次数、总耗时、平均执行时间(s)、平均扫描行数、最大扫描行数、平均索引扫描行数、最大索引扫描行数、平均返回行数、最大返回行数。
7.1.3 导出慢日志列表。
在慢日志列表右上方单击

,导出当前列表展示的所有慢日志统计数据。导出格式为.csv。



查看慢 SQL 明细信息

1. 登录 DBbrain 控制台
2. 在左侧导航栏,选择诊断优化,选择慢 SQL 分析页签。
3. 在页面上方选择 MongoDB 数据库类型,选择待分析的实例 ID。
4. 选择明细页签。
5. 选择时间范围,支持选择当天、近5分钟、近10分钟、近1小时、近3小时、近24小时、近3天或自定义时间段(时间点最早支持选择前30天,时间段最大支持选择3天)。
6. (可选)通过耗时或命名空间过滤慢 SQL 语句。
耗时:选择大于或小于具体执行时间,或在某一个区间的执行时间。



命名空间:选择包含或排除一个或多个命名空间。选择包含则多个命名空间关系为或,选择排除则多个命名空间关系为并。



7. 查看慢 SQL 明细信息。默认按执行时间降序排序。



其中,慢 SQL 列表还支持以下操作:
复制或查看 SQL 语句:鼠标悬停至 SQL 语句处,单击复制查看
单击列表表头参数项支持按照升序或降序排序:包括执行时间、扫描索引数、返回行数、扫描行数。
8. 导出慢 SQL 明细数据。
在慢 SQL 列表上方单击

,导出当前列表的展示的所有慢 SQL 明细。导出格式为.csv。

相关操作

若需要在慢 SQL 分析页面查看监控指标详情,或对比查看两个时间段的监控指标,可在页面右上方单击监控详情



选择监控指标,选择时间范围,查看监控指标趋势图和列表信息。

若需要对比两个时间段的监控指标,请单击添加时间对比