更新时间:2022-04-13 GMT+08:00
分享

SQL分析

通过图表形式展现数据库、SQL语句的调用次数、响应时间、错误次数等关键指标,用于分析异常SQL语句导致的数据库性能问题,异常SQL语句是指慢SQL语句和调用出错的SQL语句。SQL分析当前仅支持MySQL、Oracle、PostgreSQL关系型数据库。

SQL操作界面说明

图1 SQL界面图示

异常SQL语句分析

数据库SQL语句异常,可能导致业务超时等性能问题。在日常运维中,可通过错误耗时、响应时间等关键指标对数据库进行监控,定位出那些执行耗时长、效率低、调用出错的SQL语句,并对其进行分析和优化。

SQL开关用来控制是否对SQL数据进行采集,操作前您需要确保该开关已开启,否则您将查询不到SQL数据。SQL开关默认为开启状态,若已被关闭,请在左侧导航栏中选择“采集管理 > 采集配置”进行开启。

  1. 登录应用性能管理
  2. 在左侧导航栏中选择“SQL分析”。
  3. 在SQL界面中,设置右上角的时间范围,将时间调整到问题发生的时间段。
  4. 在“概览”页签,通过数据库关键指标定位出应用中的问题数据库。数据库响应时间长、调用错误次数多都可能导致性能问题。

  5. 分析该数据库出现性能问题的原因。

    单击“SQL分析”页签,在SQL语句列表中定位出异常SQL语句。

  6. 进一步分析导致SQL语句异常的原因。

    1. 单击该异常SQL语句,跳转到调用链页面,查看异常SQL对整个业务的影响。

    2. 单击“操作”列的“查看调用关系”,找到异常SQL语句所在的方法。在该方法中对该SQL语句进行分析,例如,是没有用到索引、数据量过大、语法错误或出现死锁等原因导致SQL语句异常,找出原因后对SQL语句进行优化。

阈值规则

通过创建阈值规则创建“资源类型”为SQL的阈值规则。

如果产生告警后,需要查看产生告警具体的SQL语句,需要如下步骤:

  1. 从告警详情中查看告警上报的时间、sqlId,以及数据库实例tier。

  1. 在APM的SQL分析页面,根据查询到的tier和时间选择查询范围,查询到对应数据库实例当前时间内的SQL语句列表。

  1. 用查询到的sqlId搜索,查询到具体的SQL语句。

  1. 查询到SQL语句后,根据业务场景和SQL语句的指标值进行分析。

相关文档