数据库实例监控 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

数据库实例监控

数据库实例是 Amazon RDS 的基本构建块。它是在云中运行的独立数据库环境。对于 MySQL 和 MariaDB 数据库,数据库实例是 mysqld 程序,也称为 MySQL 服务器,它包括多个线程和组件,例如 SQL 解析器、查询优化器、线程/连接处理程序、系统和状态变量以及一个或多个可插拔存储引擎。每个存储引擎都旨在支持专门的使用案例。默认和推荐的存储引擎是 InnoDB,它是一个符合原子性、一致性、隔离性、持久性(ACID)模型的事务性、通用型关系数据库引擎。InnoDB 具有内存结构(缓冲池、更改缓冲区、自适应哈希索引、日志缓冲区)以及磁盘结构(表空间、表、索引、撤消日志、重做日志、双写缓冲区文件)。为了确保您的数据库严格遵循 ACID 模型,InnoDB 存储引擎实现了许多功能来保护您的数据,包括事务、提交、回滚、崩溃恢复、行级别锁定和多版本并发控制(MVCC)。

数据库实例的所有这些内部组件协同工作,有助于将数据的可用性、完整性和安全性保持在预期和令人满意的性能水平。根据您的工作负载,每个组件和功能都可能对 CPU、内存、网络和存储子系统带来相应的资源需求。对特定资源的需求激增超过该资源的预调配容量或软件限制(由配置参数或软件设计决定)时,数据库实例可能会出现性能下降或完全不可用和损坏的情况。因此,必须测量和监控这些内部组件,将其与定义的基准值进行比较,并在监控值偏离预期值时生成提醒。

如前所述,您可以使用不同的工具,来监控 MySQL 和 MariaDB 实例。我们建议您使用 Amazon RDS 性能详情和 CloudWatch 工具进行监控和提醒,因为这些工具与 Amazon RDS 集成,可收集高分辨率指标,近乎实时地呈现最新的性能信息,并生成告警。

无论您首选哪种监控工具,我们都建议您在 MySQL 和 MariaDB 数据库实例中开启性能架构性能架构是一项可选功能,用于在低级别监控 MySQL 服务器(数据库实例)的运行,旨在最大限度地减少对数据库整体性能的影响。您可以使用 performance_schema 参数管理此功能。虽然此参数是可选的,但您必须使用它来收集高分辨率(每秒一次)的每个 SQL 指标、活跃会话指标、等待事件和其他详细的低级别监控信息,这些信息由 Amazon RDS 性能详情收集。

Sections