使用 CloudWatch 数据库洞察分析执行计划 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 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. 登录 Amazon Web Services Management Console并打开 CloudWatch 控制台(https://console.aws.amazon.com/cloudwatch/)。

  2. 选择 Insights

  3. 选择 Database Insights

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

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

  6. 选择 Top SQL(主要 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. 您还可以通过在“数据库负载”图表的切片方式下拉列表中选择计划,查看随着时间的推移每个计划对数据库负载的贡献情况。