创建新的 AWS RDS 实例并导入数据,而不是将 MySQL 版本从 5.6 更新到 5.7

Posted

技术标签:

【中文标题】创建新的 AWS RDS 实例并导入数据,而不是将 MySQL 版本从 5.6 更新到 5.7【英文标题】:Create new AWS RDS instance and import data rather than update MySQL version from 5.6 to 5.7 【发布时间】:2021-05-10 00:45:00 【问题描述】:

我目前有一个基于 mysql 5.6 版的 RDS 实例在 AWS 中运行。我需要将其更新到 5.7,建议的主要内容是使用 AWS 控制台中的主要更新功能。但是,我查看了文档,它似乎很复杂,所以我想知道以下过程是否是一个有效的解决方法,可以达到相同的结果?

    基于mysql版本8(也可以做5.7)新建一个RDS实例 将数据库中的数据从原始 RDS 实例导出到转储文件中(使用 mysql 工作台的导出数据功能) 重新连接现有堡垒 EC2 实例以连接到具有 mysql 版本 8 的新 RDS 实例(使用 mysql 工作台)并通过该实例访问新 RDS 将步骤 2 中创建的转储文件中的数据库导入新的 RDS 实例(使用 mysql 工作台的导入数据功能) 配置应用程序以使用新 RDS 实例的详细信息

这是一个有效的程序吗?如果不是,那有什么问题?

【问题讨论】:

【参考方案1】:

您的程序看起来不错。不要忘记在新的 RDS 实例上设置入站规则。连接到新实例后,使用 MySQL Workbench 是移动数据的好方法。完成新版本的所有设置、入站规则集和数据移植到新实例后,请务必同时删除旧 RDS 实例。

【讨论】:

有什么方法可以让我保留它(免费),以防万一出现问题,也许可以通过创建它的只读副本,如果是这样的话? 这个问题的答案很好——docs.aws.amazon.com/AmazonRDS/latest/UserGuide/… 谢谢 - 我还有一个问题。关于为安全设置入站规则,我不能 100% 确定这意味着我需要设置什么作为可用区、vpc、子网和 VPC 安全组。对于 AZ、VPC 和子网,是否只是确保应用程序(EC2 实例)和 RDS 都在同一个中?而对于 vpc 安全组,您如何做到只有特定的 EC2 实例才能访问它? 这里有一个 AWS 教程可以提供帮助 - github.com/awsdocs/aws-doc-sdk-examples/tree/master/javav2/…。要从您的 DEV 机器连接到 RDS,您需要指定您的开发机器的 IP 地址。当您设置新的入站规则时,有一个选项会显示 MyIP。

以上是关于创建新的 AWS RDS 实例并导入数据,而不是将 MySQL 版本从 5.6 更新到 5.7的主要内容,如果未能解决你的问题,请参考以下文章

是否可以将 AWS RDS Postgres SSL 连接与 DNS 别名而不是 AWS 端点一起使用?

如何在 AWS elasticbeanstalk 上删除环境而不删除 RDS

AWS:为单独的 EB 实例克隆 RDS

将 CSV 导入到 postgreSQL 中的表中,忽略重复项 - 亚马逊 AWS/RDS

Amazon AWS RDS MySQL - 实例和定价

如何为 AWS RDS 实例设置数据库时区 [重复]