在 dba_plans 视图中检查 Aurora PostgreSQL 查询计划 - Amazon Aurora

在 dba_plans 视图中检查 Aurora PostgreSQL 查询计划

已被授予 apg_plan_mgmt 角色的数据库用户和管理员可以查看和管理存储在 apg_plan_mgmt.dba_plans 中的计划。Aurora PostgreSQL 数据库集群的管理员(具有 rds_superuser 权限的用户)必须将此角色显式授予需要处理查询计划管理的数据库用户。

apg_plan_mgmt 视图包含 Aurora PostgreSQL 数据库集群的写入器实例上每个数据库的所有托管式 SQL 语句的计划历史记录。此视图可让您检查计划、计划的状态、上次使用时间以及所有其他相关详细信息。

标准化和 SQL 哈希中所讨论,每个托管式计划均由 SQL 哈希值和计划哈希值的组合来标识。通过这些标识符,您可以使用 Amazon RDS Performance Insights 等工具来跟踪单独计划的性能。有关 Performance Insights 的更多信息,请参阅使用 Amazon RDS Performance Insights

列出托管计划

要列出托管计划,请在 apg_plan_mgmt.dba_plans 视图上使用 SELECT 语句。以下示例显示 dba_plans 视图中的一些列,例如 status,以标识已批准和未批准计划。

SELECT sql_hash, plan_hash, status, enabled, stmt_name FROM apg_plan_mgmt.dba_plans; sql_hash | plan_hash | status | enabled | stmt_name ------------+-----------+------------+---------+------------ 1984047223 | 512153379 | Approved | t | rangequery 1984047223 | 512284451 | Unapproved | t | rangequery (2 rows)

为便于阅读,所显示的查询和输出仅列出了 dba_plans 视图中的若干列。有关完整信息,请参阅 Aurora PostgreSQL 兼容版的 apg_plan_mgmt.dba_plans 视图参考