企业运维训练营之数据库原理与实践—RDS常见问题排除及DAS自动弹性伸缩—RDS常见问题排除及DAS自动弹性伸缩(下)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 企业运维训练营之数据库原理与实践—RDS常见问题排除及DAS自动弹性伸缩—RDS常见问题排除及DAS自动弹性伸缩(下)

接上篇:https://developer.aliyun.com/article/new/supportservice?spm=a2c6h.12873639.article-detail.6.21741b67F3verg&publish=1224221#/?_k=6u4bk3image.png

 

上图为异常快照页面,能够查看异常指标分析,也可以查看所有指标。

 

然后进入之后也会展示会话快照的信息。

 

image.png

 

如上图,可以重点关注在某个时间段哪些SQL执行比较多、SQL执行量较多的占比是多少、平均执行时长是多少,可以对关注项进行排序。

 

操作栏点击复制样本,可以复制具体样本的SQL,点击优化可以查看优化后的执行计划,能够快速地判断SQL是否有问题,点击限流可以将SQL加入限流模板,后面遇到此类SQL会进行限流。

 

image.png

 

事务与锁快照能够展示元数据锁的信息,事务持续时间超过15秒会被记录,锁等待超过5秒也会被记录。

 

因此遇到锁类的问题时,也可以通过此模块快速查看问题。

 

image.png

 

慢日志统计页面记录了慢日志统计与慢日志明细,也包含异常时间段内相应的信息。可以通过排序的方式快速找到信息,也可以进行样本优化与限流。

 

image.png

 

根因分析页面会展示SQL的执行次数、平均执行时间、最大执行时间等,并给优化建议。

 

image.png

 

诊断出异常时,也可以通过配置优化与限流措施解决问题。比如平常默认仅SQL诊断,也可以选择SQL诊断并自动创建索引。但CPU正打高时不会执行DDL,需要等到实例运维时间段才会执行。因此此时添加索引并不能解决当下的问题的。针对CPU打高等问题,建议勾选“同时kill执行中的异常SQL”,先快速恢复,后面再添加索引。

 

也可以指定CPU大于多少/活跃会话大于某个阈值时自动限流,指定限流时间段,下次遇到时同类SQL时可进行相应的限流措施。

 

image.png

 

比如遇到了连接数打高-元数据锁阻塞,根因分析列表里会显示有SQL处于等待元数据锁的状态。

 

image.png

 

内存异常的根因分析页面会列出异常SQL列表,可以根据反馈的SQL在后续操作中重点关注,如果是规格太低则会推荐相应规格,也可以考虑是否升级规格。

 

image.png 

 

异常事件发生后,可以在自治中心选择时间段看查看异常事件。也可以通过配置订阅、选择相应的联系人进行告警,以便责任人第一时间收到告警,及时核实处理。

 

image.png

 

自建库往往需要提前规划好未来几年的业务容量,购买相应硬件。但使用云上RDS数据库的优势在于可以将底层资源看作资源池,可以随时发起变配操作。同时,可以通过DAS自动检测资源,并自动进行扩容,减少人为操作,能够简化日常管理。

上图展示了DAS自动伸缩分类,RDS支持的扩容主要有规格扩容、存储扩容,秒级扩核以及serverless。

 

规格扩容会有闪断的,而且只支持云盘实例,只支持MySQL的新架构实例。新架构实例指基于K8S形态部署的形态,对实例的稳定性能提供更好的支撑。

 

存储扩容仅支持ESSD云盘,不支持回缩。

 

秒级扩核的原理是与规格相关联,只支持本地通用型实例。通用型实例没有做硬性CPU绑定,因此可能存在CPU竞争。但其优势在于可以随时通过将底层的cgroup放开,快速升级核数,能够实现秒级扩核,也没有闪断,可以自动回缩。

 

Serverless是计算与存储全弹性的,仅支持云盘。

 

image.png

 

规格扩容需要指定观察窗口,观察窗口CPU利用率大于设定的阈值会触发扩容。如果扩容后平均值依然大于阈值,会继续扩容,但是扩容的规格不会超过设置的规格上限。

 

基本信息设置这里无法设置回缩配置,需要在DAS自治功能开关进行配置。

 

image.png

 

磁盘打满时,实例会变为只读,不再提供写的功能了。对于云盘类型的实例,可以设置存储扩容,通过指定上限避免存储扩得太大。

 

image.png

 

秒级扩核可以设置扩容观测窗口、CPU出发阈值以及回缩观测窗口。底层直接改cgroup,因此业务无感。

 

image.png

 

可以配置弹性策略模板,将模板批量应用到多个实例上,避免挨个配置的重复劳动。

 

目前有两种弹性策略:

 

基于预测的自动弹性伸缩:以过去10天的历史数据预测未来24小时的指标。仅预测,不执行,只给出扩容建议,不执行扩容动作。

 

定时自动弹性伸缩:适用于周期性负载的业务,比如每天早上 9 点到下午 6 点是业务高峰,可以配置定时自动弹性设备,指定每天在该时间段做一次变配。

 

image.png

 

上图为自动弹性伸缩配置详情页。包含应用策略名、原规格、目标规格、开始时间、结束时间。

 

image.png

 

上图左侧为预测型的弹性策略,预测频率为每天一次,在0-1点根据过去10天的历史数据进行未来24h的预测。目前,预测型仅支持CPU,比如CPU配置为80%,如果预测到未来20小时将超过80%,会给出扩容建议。

 

定时自动伸缩只支持共享型云盘实例,包括执行的具体操作、生效时间、重复周期、开始时间、持续时间等。

 

image.png

 

image.png

 

设置定时弹性伸缩有两种方式,其一为RDS控制台-自治中心,其二为DAS控制台-管理与设置。

 

image.png

 

DAS目前支持高可用云盘、高可用本地盘以及三节点企业版,但本地盘只能扩CPU和IOPS,不能扩内存。而云盘可以扩规格,也可以在配置时指定扩容的规格,配置路径为一键诊断-自治中心-自治功能开关。

 

image.png

 

在自治功能管理里面可以勾选自动弹性扩展,指定CPU大于某个值时做扩容,指定观察窗口期、是否要需要回缩、静默周期等。

 

image.png

 

本地盘则没有指定规格选项,因为只是扩CPUIOPS,主要通过CPU的指标判断是否需要扩核。

 

相关文章
|
17天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
4天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
69 42
|
26天前
|
关系型数据库 OLAP 分布式数据库
瑶池数据库微课堂|PolarDB/RDS+ADB Zero-ETL:一种免费、易用、高效的数据同步方式
瑶池数据库微课堂介绍阿里云PolarDB/RDS与ADB的Zero-ETL功能,实现免费、易用、高效的数据同步。内容涵盖OLTP与OLAP的区别、传统ETL存在的问题及Zero-ETL的优势(零成本、高效同步),并演示了从RDS MySQL到AnalyticDB MySQL的具体操作步骤。未来将优化和迭代此功能,提供更好的用户体验。
|
1月前
|
运维 关系型数据库 MySQL
体验领礼啦!体验自建数据库迁移到阿里云数据库RDS,领取桌面置物架!
「技术解决方案【Cloud Up 挑战赛】」上线!本方案介绍如何将自建数据库平滑迁移至云数据库RDS,解决业务增长带来的运维难题。通过使用RDS MySQL,您可获得稳定、可靠和安全的企业级数据库服务,专注于核心业务发展。完成任务即可领取桌面置物架,每个工作日限量50个,先到先得。
|
22天前
|
缓存 关系型数据库 MySQL
【深入了解MySQL】优化查询性能与数据库设计的深度总结
本文详细介绍了MySQL查询优化和数据库设计技巧,涵盖基础优化、高级技巧及性能监控。
163 0
|
2月前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
69 3
|
2月前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
107 3
|
2月前
|
SQL 关系型数据库 MySQL
数据库灾难应对:MySQL误删除数据的救赎之道,技巧get起来!之binlog
《数据库灾难应对:MySQL误删除数据的救赎之道,技巧get起来!之binlog》介绍了如何利用MySQL的二进制日志(Binlog)恢复误删除的数据。主要内容包括: 1. **启用二进制日志**:在`my.cnf`中配置`log-bin`并重启MySQL服务。 2. **查看二进制日志文件**:使用`SHOW VARIABLES LIKE 'log_%';`和`SHOW MASTER STATUS;`命令获取当前日志文件及位置。 3. **创建数据备份**:确保在恢复前已有备份,以防意外。 4. **导出二进制日志为SQL语句**:使用`mysqlbinlog`
106 2
|
2月前
|
运维 关系型数据库 MySQL
自建数据库迁移到云数据库RDS
本次课程由阿里云数据库团队的凡珂分享,主题为自建数据库迁移至云数据库RDS MySQL版。课程分为四部分:1) 传统数据库部署方案及痛点;2) 选择云数据库RDS MySQL的原因;3) 数据库迁移方案和产品选型;4) 线上活动与权益。通过对比自建数据库的局限性,介绍了RDS MySQL在可靠性、安全性、性价比等方面的优势,并详细讲解了使用DTS(数据传输服务)进行平滑迁移的步骤。此外,还提供了多种优惠活动信息,帮助用户降低成本并享受云数据库带来的便利。
|
2月前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
344 15

热门文章

最新文章