使用 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,则还需满足以下先决条件:
您的数据库实例必须使用 Aurora PostgreSQL 版本 14.10、15.5 或更高版本。有关升级 Aurora PostgreSQL 数据库集群的信息,请参阅《Amazon Aurora 用户指南》中的升级 Amazon Aurora PostgreSQL 数据库集群。
您必须使用以下选项之一,将参数
aurora_compute_plan_id
设置为on
来配置数据库集群以分析执行计划。《Amazon Aurora 用户指南》中的在 Amazon Aurora 中创建数据库集群参数组
《Amazon Aurora 用户指南》中的在 Amazon Aurora 中修改数据库集群参数组中的参数
分析执行计划
要分析执行计划,请按以下流程操作。
分析执行计划
登录 Amazon Web Services Management Console并打开 CloudWatch 控制台(https://console.aws.amazon.com/cloudwatch/
)。 选择 Insights。
选择 Database Insights。
选择数据库实例视图。
选择一个数据库实例。
选择 Top SQL(主要 SQL)选项卡。计划数列显示针对每个摘要查询收集的计划数。
(可选)如果未出现计划数列,请选择主要 SQL 表上的设置图标,以自定义列的可见性和顺序。
选择一个摘要查询,将其扩展为其组件语句。
向下滚动并查看 SQL 文本。然后,选择计划选项卡。
默认情况下,CloudWatch 会显示预计的执行计划。对于 Aurora PostgreSQL,要查看实际执行计划,请启用数据库实例的
aurora_stat_plans.with_analyze
参数。有关参数aurora_stat_plans.with_analyze
的更多信息,请参阅《Amazon Aurora 用户指南》中的监控 Aurora PostgreSQL 的查询执行计划和峰值内存。要比较来自同一摘要查询的计划,请从摘要计划查询列表中选择两个计划。
您可以一次查看一个或两个查询计划。在以下示例屏幕截图中,两个计划都适用于 Aurora PostgreSQL。
您还可以通过在“数据库负载”图表的切片方式下拉列表中选择计划,查看随着时间的推移每个计划对数据库负载的贡献情况。