Answers:
亚马逊最近发布了一个新闻稿,宣布您现在可以更改现有RDS实例的VPC:
您现在可以轻松更改您的Amazon RDS数据库实例使用的Amazon Virtual Private Cloud(Amazon VPC)。您可以使用Amazon RDS管理控制台,Amazon RDS API或AWS Command Line Tools为在Single-AZ配置中部署的现有数据库实例指定新的VPC。此外,如果您在EC2-Classic环境中运行数据库实例,则可以通过修改现有数据库实例来切换到EC2-VPC环境。如果您的AWS账户是在2013-12-04之前创建的,则可能在EC2-Classic环境中运行RDS。
此功能可用于Amazon RDS支持的所有区域,并且可用于所有受支持的MySQL,MariaDB,Microsoft SQL Server,Oracle和PostgreSQL版本。
请注意,仅在单可用区部署中运行的数据库实例支持此功能。如果要更改多可用区部署中数据库实例的VPC环境,可以将实例临时修改为单可用区部署,然后在更改为EC2-VPC环境后重新启用多可用区。
简单-为当前RDS实例创建快照,然后将该快照还原到VPC中的新实例。
为了避免在迁移到新的VPC时发生停机,您应该为原始RDS群集设置Multi-AZ数据库实例,以便创建快照不会引起短暂的I / O暂停。群集还应该启用二进制日志记录,以便在将快照加载到新的VPC中时,可以在数据库之间设置复制,以恢复创建快照后可能已插入或更新的任何数据。
遵循RDS文档中的本指南
编辑
我必须使用RDS Aurora进行此操作,并且必须对上述指南进行一些修改:
从Aurora快照还原时,无法设置参数组,因此实例将自动获取默认参数。实例可用后,更改参数以包括二进制日志记录并重新启动它。
运行SHOW MASTER STATUS\G
时不会为您提供正确的二进制日志文件和原始数据库在快照生成时的位置,实例的重新启动会创建一个新的二进制日志文件。而是运行SHOW BINARY LOGS;
查找先前的日志文件和file_size并在设置复制时使用这些值。