亚马逊AWS官方博客
将 Aurora 和 RDS 的 Performance Insights 迁移至 CloudWatch Database Insights,以获取更全面的数据库监控体验
![]() |
Amazon Relational Database Service (RDS)、Amazon Aurora(MySQL 兼容版)和 Amazon Aurora(PostgreSQL 兼容版)数据库实例的 Performance Insights 仪表板已经宣布将于 2025 年 11 月 30 日终止支持(End-of-Life)。
在控制台上,您会看到以下提醒:
![]() |
为确保数据库的监控体验不受影响,请于2025年11月30日前将所有使用Performance Insights付费版切换至CloudWatch Database Insights高级模式。如果您不采取任何行动,则使用Performance Insights的数据库实例将默认使用CloudWatch Database Insights 标准模式。在CloudWatch Database Insights标准模式下,数据历史记录仅会保留 7 天,并且可能无法查看执行计划和慢语句分析等信息。
启用 CloudWatch Database Insights 高级模式
在创建或修改 DB instance/Multi-AZ DB cluster 时,请在 Monitoring -> Database Insights 部分选择高级模式:
- 数据保留期:设置数据的存储时长。
- Amazon KMS 密钥:用于传输中和静态数据的加密。
![]() |
CloudWatch Database Insights 高级模式概览
CloudWatch Database Insights 高级模式为 Fleet 和 Instance 层面的长期趋势与性能分析提供强大支持。通过统一视图提供全面的数据库监控能力,包含以下核心功能:
- 关键指标与日志分析:包括数据库语句执行计划、锁分析、慢查询日志分析等,助力快速定位性能问题。
- 重要事件追踪:持续记录数据库关键事件。
CloudWatch Database Insights 高级模式的费用
CloudWatch Database Insights 高级模式的费用主要包含两部分:
- 计算资源费用:定价基于受监控数据库所使用的计算资源量。比如针对预置实例,将根据每个实例使用的 vCPU 平均数量按小时计费。
- 日志存储费用:基于 CloudWatch Logs 标准存储中保存的数据库日志大小计费。
详情请查阅以下链接:https://www.amazonaws.cn/en/cloudwatch/pricing/
Fleet Health
Fleet Health Dashboard 用于查看多个数据库实例健康状态。它支持通过标签(Tags)、集群(Cluster)等信息筛选所需要监控的数据库实例。该看板的核心功能包括查看 Fleet 中所有数据库实例的数据库负载和告警状态;TOP 10 实例的关键指标,如数据库连接数、读写 IOPS、读写延迟等。
![]() |
Instance Health
Database Instance Dashboard 用于查看单个数据库实例的健康状态,提供多维度的全面监控指标,包括:
– 关键性能指标:数据库负载、SQL 查询效率、锁分析、语句执行计划等。
– 细粒度监控维度:高频 SQL 语句、慢语句、语句分布(客户端主机和登录用户)等。
![]() |
示例:使用 CloudWatch Database Insights 分析数据库阻塞
在接下来的演示中,我们将模拟一个典型的数据库语句性能问题的场景 – 语句阻塞,然后使用 CloudWatch Database Insights 来检查阻塞细节。
场景:一个长时间运行的事务(写操作)阻塞了其他语句执行。
步骤:
1. 准备测试数据表
2. 模拟阻塞(需要多个客户端会话)
会话 1(写操作 – 阻塞头)
会话 2(写操作 – 被阻塞语句)
接下来我们可以使用 CloudWatch Database Insights来检查查询阻塞的详细信息。锁定树(Lock trees)提供了足够的信息来排查阻塞问题。阻塞链显示了阻塞头的详细信息、被阻塞的语句。
![]() |
可以自定义视图以显示更多的阻塞信息以更好的了解阻塞的信息。比如阻塞头和被阻塞语句的客户端信息(IP 地址、端口),阻塞的时间,锁等待的具体信息(锁类型,等待时间)等。
![]() |
![]() |
根据 Lock trees 提供的详细信息,我们可以了解到阻塞头会话来自于客户端‘pgAdmin 4’,其登录用户名是‘postgres’。该阻塞头会话处于‘空闲’状态(事务尚未提交或回滚),因为它持有独占锁(ExclusiveLock),所以来自‘pgbench’的语句被阻塞。
结束语
数据库的 Performance Insights 看板将在 2025 年 11 月 30 日停止使用,请及时切换使用 CloudWatch Database Insights 高级模式。在这篇博客中,我们介绍了 CloudWatch Database Insights 概述信息,包括定价、Fleet Health 和 Database Health 特性。我们还演示了如何使用它来排查阻塞问题。您可以查看 CloudWatch Database Insights 的官方文章,以获取提供的所有功能的详细信息。