[AWS]RDS数据库版本升级

背景:由于AWS上mysql5.7版本不再支持,需要进行版本升级。

吐槽:每年都要来那么几次,真的有病一样,很烦。

步骤一、升级检查

AWS提供了一个python的升级检测脚本,可以按照一下脚本下载测试:

复制代码
[root@ip-bin]#wget https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-8.0.32-linux-glibc2.12-x86-64bit.tar.gz
[root@ip-bin]#tar -xvzf mysql-shell-8.0.32-linux-glibc2.12-x86-64bit.tar.gz
[root@ip-bin]#cd mysql-shell-8.0.32-linux-glibc2.12-x86-64bit/bin
[root@ip-bin]#./mysqlsh
MySQL JS > util.checkForServerUpgrade('[email protected]:3306',{"password":"123456","targetVersion":"8.0.30"})
The MySQL server at your-instance.rds.amazonaws.com:3306,
version 5.7.38-log - Source distribution, will now be checked for compatibility
issues for upgrade to MySQL 8.0.30...

参考文档:保驾护航 -- Amazon RDS for MySQL 5.7 到 8.0 升级前置检查 | 亚马逊AWS官方博客

吐槽:这个脚本有点脑残,比如我检测了6个error,实际却看不到具体是哪些。

只能一条一条往上翻,最后却只看到一个Error。

步骤二:控制台进行蓝绿部署。

报错一:RDS集群和实力没有使用相同的参数组。

不知道哪个傻逼建立RDS集群时候,创建集群和读写实例的时候,使用不一样的参数组,你要分别到集群配置和每个实例单独配置里面进行修改,修改参数组之后要立即应用,并且还要重启,保证一致:

报错二:"蓝/绿部署需要启用逻辑复制的数据库集群。在为数据库集群创建蓝/绿部署之前,请将数据库集群与启用逻辑复制的自,定义数据库集群参数组相关联。"

说尼玛那么复杂,其实就是在参数组没有启动binlog复制,但是RDS默认的default参数组,是不能进行修改的,所以不得不去创建一个参数组,

更改之后,在进入集群和实例,把参数组该为你现在新设置的。

报错三:升级之后的8.0不支持,db.r4.large。(报错的时候英文说的很复杂,记不住了,大概意思)

这个就是要到每个读写实力里面,先去把版本升级了,极其傻逼,AWS变相赚你钱

修改之后也要立即应用。

报错四:"The current DB cluster parameter group mysql5-7 is custom. You must explicitly specify a new DB cluster parameter group, either default or custom, for the engine version upgrade"

还是按照报错三的方式,自建8.0的参数组,给实例和集群。

报错五:"Databases using RDS Proxy are not currently supported for Blue Green Deployments"

这是你RDS启动了一个代理,要先把代理拿掉,不然建立不起蓝绿部署。

步骤三:

蓝绿部署升级过程中可能会遇到升级失败,马上查看日志:upgrade-prechecks.log

这份日志拿给AI分析一下,只需要改error的部分就行了,warning的不用管。

相关推荐
选型宝2 小时前
腾讯怎样基于DeepSeek搭建企业应用?怎样私有化部署满血版DS?直播:腾讯云X DeepSeek!
人工智能·ai·云计算·腾讯云·选型宝
zqh176736464693 小时前
2025年阿里云大数据ACP高级工程师认证模拟试题(附答案解析)
阿里云·云计算
码上飞扬4 小时前
Java大师成长计划之第22天:Spring Cloud微服务架构
java·运维·云计算
Cloud Traveler5 小时前
探索虚拟化:云计算时代的资源优化之道
云计算
蒙奇D索大1 天前
【人工智能】自然语言编程革命:腾讯云CodeBuddy实战5步搭建客户管理系统,效率飙升90%
人工智能·python·django·云计算·腾讯云
Johny_Zhao1 天前
Ubuntu安装部署Zabbix网络监控平台和设备配置添加
linux·网络·mysql·网络安全·信息安全·云计算·apache·zabbix·shell·yum源·系统运维·itsm
李恒-聆机智能专精数采1 天前
从零开始了解数据采集(二十七)——什么IIOT平台
大数据·人工智能·云计算·制造·数据采集·数据可视化
GreatNXY1 天前
【阿里云】阿里云 Ubuntu 服务器无法更新 systemd(Operation not permitted)的解决方法
服务器·阿里云·云计算
Lw老王要学习1 天前
Linux架构篇、第五章git2.49.0部署与使用
linux·运维·git·云计算·it
亚林瓜子2 天前
AWS EC2源代码安装valkey命令行客户端
redis·云计算·aws·cli·valkey