View a markdown version of this page

使用 CloudWatch 数据库洞察分析执行计划 - Amazon CloudWatch

使用 CloudWatch 数据库洞察分析执行计划

您可以使用以下方法来分析 Amazon Aurora PostgreSQL、RDS for Microsoft SQL Server 和 RDS for Oracle 数据库的执行计划。

  • 划分者下拉列表:在数据库负载图表中选择计划维度,以查看不同计划在一段时间内对数据库负载的贡献。

  • 热门 SQL 选项卡 – 选择数据库负载分析,然后选择热门 SQL 选项卡,以查看各摘要查询的计划数量。

    要分析摘要查询的执行计划,可选择该查询,然后选择计划选项卡。有关更多信息,请参阅以下步骤。

先决条件

要分析执行计划,必须使用数据库洞察的高级模式。有关如何开启高级模式的信息,请参阅开启适用于 Amazon Aurora 的数据库洞察的高级模式Turning on the Advanced mode of Database Insights for Amazon Relational Database Service

如果您使用的是 Aurora PostgreSQL,则还需满足以下先决条件:

分析执行计划

要分析执行计划,请按以下流程操作。

分析执行计划
  1. 登录 AWS 管理控制台并打开 CloudWatch 控制台(https://console.aws.amazon.com/cloudwatch/)。

  2. 选择 Insights

  3. 选择 Database Insights

  4. 选择数据库实例视图。

  5. 选择一个数据库实例。

  6. 选择主要 SQL 选项卡。计划数列显示针对每个摘要查询收集的计划数。

  7. (可选)如果未出现计划数列,请选择主要 SQL 表上的设置图标,以自定义列的可见性和顺序。

    计划详细信息表设置
  8. 选择一个摘要查询,将其扩展为其组件语句。

    将查询扩展为其组件语句
  9. 向下滚动并查看 SQL 文本。然后,选择计划选项卡。

    默认情况下,CloudWatch 会显示预计的执行计划。对于 Aurora PostgreSQL,要查看实际执行计划,请启用数据库实例的 aurora_stat_plans.with_analyze 参数。有关参数 aurora_stat_plans.with_analyze 的更多信息,请参阅《Amazon Aurora 用户指南》中的监控 Aurora PostgreSQL 的查询执行计划和峰值内存

  10. 要比较来自同一摘要查询的计划,请从摘要计划查询列表中选择两个计划

    您可以一次查看一个或两个查询计划。在以下示例屏幕截图中,两个计划都适用于 Aurora PostgreSQL。

    比较计划
  11. 您还可以通过在“数据库负载”图表的切片方式下拉列表中选择计划,查看随着时间的推移每个计划对数据库负载的贡献情况。

    主要 SQL 表,显示按计划划分的负载,包含查询语句、执行指标和计划计数。