对比各类 AWS MySQL 升级方案及原理

搞了好几个月的MySQL升级终于接近尾声,进入总结梳理阶段~

本文主要对比升级期间用到的三种方案:

  • 本地升级
  • 蓝绿升级
  • API同步升级

|-----------------|-------------------|--------------------------|------------------|
| 对比项 \ 升级方式 | 本地升级 | 蓝绿升级 | API同步升级 |
| 停机时间 | 长,3-5分钟不可读写 | 较短,约15秒实例变为只读 | 短,5秒以内不可读写 |
| 准备时间 | 无 | 小时级至一天 | 一天至一周 |
| 资源费用 | 无 | 较高,需要双份实例,但使用时间较短 | 高,需要双份实例,且使用时间长 |
| DB操作 | 简单,点击升级即可 | 较复杂,需提前准备绿色实例、执行切换、回收旧实例 | 非常复杂,一篇写不下 |
| 应用操作 | 简单,升级后检查业务情况即可 | 简单,升级后检查业务情况即可 | 复杂,需将应用全部迁移至新连接串 |
| 连接串变化 | 不变 | 不变(但底层库变了) | 变化(可以手动改,但需重启) |
| 对DTS同步链路的影响 | 低,升级期间会中断,过后可自动恢复 | 链路中断,需要升级后重建 | 链路中断,但可在升级前新建 |
| 风险 | 低 | 较低,回收操作不友好,让人两眼一黑 | 高,太过复杂 |

一、 AWS的版本支持策略

可以参考 aws RDS 版本升级最佳实践的探讨 -- OracleBlog 介绍非常详细

MySQL Amazon RDS 上的 MySQL 版本 - Amazon Relational Database Service

PG Amazon RDS for PostgreSQL 发布日历 - Amazon Relational Database Service

二、 本地升级

1. 操作步骤

操作最简单,实例右上角点击"修改",设置对应小版本,等待升级完成即可。

2. 升级原理

  • 备份数据库(快照备份)
  • 准备升级
  • 关闭实例进行升级
  • 开启实例
  • 再次进行快照备份
  • 一些后续配置

3. 注意事项

  • 升级时长=备份时长+升级时长(约10分钟),实例中断一般发生在最后3-5分钟
  • 务必提前确认历史备份时长,避免超出变更窗口
  • 实际上在开启实例后,业务就已经恢复访问,而界面恢复需完成所有阶段,耗时较长

未完待续...

相关推荐
尽兴-29 分钟前
SQL 执行失败如何回滚?事务已提交还能恢复吗?——MySQL 误操作数据恢复全指南
sql·mysql·binlog·undolog·redolog
heze091 小时前
sqli-labs-Less-6自动化注入方法
mysql·网络安全·自动化
heze091 小时前
sqli-labs-Less-8自动化注入方法
mysql·网络安全·自动化
Dragon~Snow1 小时前
Linux-centOS Stream 9 系统 mysql-8.4.7 RPM版本
linux·mysql·centos
China_Yanhy2 小时前
AWS S3 深度配置指南:每一栏每个选项有什么作用
java·数据库·aws
万物得其道者成3 小时前
用 Python + MySQL + Web 打造我的私有 Apple 设备监控面板
前端·python·mysql
kaico20183 小时前
MYSQL的日志文件
数据库·mysql
我的golang之路果然有问题4 小时前
mysql 个人笔记导出之-数据库时间戳问题以及增删改查
数据库·笔记·学习·mysql·分享·个人笔记
JH30734 小时前
我的笔记:怎么用 MySQL 的 EXPLAIN 来分析 SQL
笔记·sql·mysql
ybb_ymm4 小时前
如何通过跳板机链接mysql数据库
数据库·mysql