通过 AWS DMS 中的同构数据迁移从 MySQL 数据库迁移数据
您可以使用同构数据迁移,将自管理 MySQL 数据库迁移到 RDS for MySQL 或 Aurora MySQL。AWS DMS 会为数据迁移创建无服务器环境。对于不同类型的数据迁移,AWS DMS 会使用不同的本机 MySQL 数据库工具。
对于完全加载类型的同构数据迁移,AWS DMS 使用 mydumper 从源数据库读取数据,并将其存储在与无服务器环境相连的磁盘上。AWS DMS 读取所有源数据后,使用目标数据库中的 myloader 恢复数据。
对于完全加载和更改数据捕获(CDC)类型的同构数据迁移,AWS DMS 使用 mydumper 从源数据库读取数据,并将其存储在与无服务器环境相连的磁盘上。AWS DMS 读取所有源数据后,使用目标数据库中的 myloader 恢复数据。AWS DMS 完成完全加载后,会设置二进制日志复制,并将二进制日志位置设置为完全加载的开始点。
对于更改数据捕获(CDC)类型的同构数据迁移,AWS DMS 需要本机 CDC 开始点才能开始复制。如果您提供了本机 CDC 开始点,AWS DMS 会捕获从该点开始的更改。或者,在数据迁移设置中选择立即,以便在实际数据迁移开始时自动捕获复制的开始点。
注意
要使仅 CDC 的迁移正常运行,所有源数据库架构和对象都必须已存在于目标数据库中。不过,目标可能具有源上不存在的对象。
您可以使用以下代码示例获取 MySQL 数据库中当前的日志序列号(LSN)。
show master status
此查询返回二进制日志文件名和位置。对于本机开始点,可使用二进制日志文件名和位置的组合。例如 mysql-bin-changelog.000024:373。在此示例中,mysql-bin-changelog.000024 是二进制日志文件名,373 是 AWS DMS 开始捕获更改的位置。
下图显示了如何使用 AWS DMS 中的同构数据迁移,将 MySQL 数据库迁移到 RDS for MySQL 或 Aurora MySQL。