本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将本地 “我的SQL数据库” 迁移到 Amazon EC2
由洛伦佐·莫塔创作 () AWS
环境:PoC 或试点 | 来源:本地 My SQL Database | 目标:我在 Amazon 上的SQL数据库 EC2 |
R 类型:更换主机 | 工作负载:开源 | 技术:迁移;数据库 |
AWS服务:AWSDMS; Amazon EC2 |
Summary
此模式为将本地 “我的SQL数据库” 迁移到亚马逊弹性计算云 (AmazonEC2) 实例上的 “我的SQL数据库” 提供了指导。该模式讨论了如何使用 AWS Database Migration Service (AWS DMS) 或原生 “我的SQL工具”(例如 mysqldump)进行迁移。它侧重于将数据库完整迁移到 “我的SQL数据库” 实例。
该模式主要面向DBAs解决方案架构师。它可用于小型或大型项目、测试或最终迁移阶段。我们建议您在生产环境中使用此模式之前,至少运行一个测试周期。
先决条件和限制
先决条件
一个活跃的AWS账户
本地数据中心中的 “我的SQL源数据库”
产品版本
我的SQL版本 5.5 及更高版本
亚马逊支持的目标操作系统EC2;参见 Ama z
on EC2 FAQs
架构
源技术堆栈
本地的 “我的SQL数据库”
目标技术堆栈
Amazon 上的 “我的SQL数据库” 实例 EC2
AWS数据迁移方法
目标架构
下图说明了转换后的目标 Amazon EC2 实施。
AWS数据迁移架构
使用 AWSDMS:
下图说明了在切换之前将完整和增量更改发送到目标 “我的SQL数据库” 所依 AWS DMS 据的数据迁移工作流程。从本地到的网络连接 AWS 取决于SQL客户端的要求,不在此模式的范围之内。
使用其他 “我的SQL工具”:
下图说明了基于使用 “我的SQL工具” 从本地数据库生成导出转储文件的数据迁移工作流程。在转换之前,这些文件将移至亚马逊简单存储服务 (Amazon S3),并导入到目标 “SQL我的数据库” 中。从本地到的网络连接 AWS 取决于SQL客户端的要求,不在此模式的范围之内。
注意:
根据停机时间考虑因素和最终直接转换的数据库大小,您可以使用 AWS DMS 或其他更改数据捕获 (CDC) 工具来最大限度地缩短转换时间。使用诸如之类的CDC工具时 AWS DMS,可以在几分钟内迁移到目标数据库。
如果数据库的大小和网络延迟允许较短的直接转换迁移窗口,那么使用 mysqldump 的离线策略就足够了。(我们建议您进行测试以获得大致的时间。)
通常,与离线选项相比,通过CDC策略 AWS DMS 需要更多的监控和复杂性。
工具
AWS 服务
AWS Database Migration Service (AWS DMS) 支持多个源数据库和目标数据库。有关支持的 “我的SQL源数据库” 和 “目标数据库” 的信息 AWS DMS,请参阅使用与我SQL兼容的数据库作为源 AWS DMS和使用与我SQL兼容的数据库作为目标。 AWS DMS如果您的源数据库不受支持 AWS DMS,则必须选择其他方法来迁移数据。
其他工具
mysqldump
是一个 “我的SQL工具”,它从 “我的SQL数据库” 中创建转储文件用于备份或迁移。 Percona XtraBackup 是一个
开源实用程序,用于在 “我的数据库” 上执行非阻塞备份。SQL
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
验证数据库版本。 | 验证源数据库和目标数据库的版本。有关支持的 “我的SQL版本” 的信息 AWS DMS,请参阅 AWS DMS 文档 AWS DMS中的来源 AWS DMS和目标。 | DBA |
确定目标操作系统。 | 确定目标操作系统的版本。有关亚马逊支持的目标操作系统的列表EC2,请参阅亚马逊EC2FAQs | DBA,系统管理员 |
确定硬件要求。 | 根据我的SQL兼容性列表和容量要求确定目标服务器实例 | DBA,系统管理员 |
确定存储要求。 | 确定目标数据库的存储类型和容量。 | DBA,系统管理员 |
识别网络要求。 | 确定网络要求,例如延迟和带宽。 | DBA,系统管理员 |
选择目标实例类型。 | 根据容量、存储功能和网络功能选择目标实例类型 | DBA,系统管理员 |
确定安全要求。 | 确定源数据库和目标数据库的网络或主机访问安全要求。 | DBA,系统管理员 |
识别用户。 | 确定安装 “我的SQL软件” 的操作系统用户列表。有关更多信息,请参阅 “我的SQL文档 | DBA,系统管理员 |
确定备份策略。 | DBA | |
确定可用性要求。 | DBA | |
确定应用程序迁移或切换策略。 | DBA,系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
创建用户和群组。 | 创建需要访问服务器和数据库的操作系统用户和组。有关更多信息,请参阅 “我的SQL文档” 中的 “访问控制和账户管理 | DBA,系统管理员 |
下载我的SQL. | 下载 “我的SQL软件”。有关说明和二进制文件,请参阅 “我的SQL文档” SQL 中的 “安装 | DBA,系统管理员 |
在EC2实例SQL上安装 My 并配置服务器。 | 连接到您的EC2实例并安装 My SQL 软件。有关更多信息,请参阅 Amazon EC2 文档中的 Connect 到您的EC2实例。 | DBA,系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
使用原生 “我” 工具SQL或第三方工具迁移数据。 | 此选项使用本机 “我的SQL工具” 或第三方工具来迁移数据库对象和数据。有关说明,请参阅 mysqldump | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
使用迁移数据 AWS DMS。 | 有关更多信息,请参阅 AWS DMS 文档AWS DMS中的高级视图。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
收集物体数量。 | 从源数据库和新的目标数据库中收集对象计数。修复目标数据库中的任何差异。 | DBA |
检查依赖项。 | 确认与其他数据库的依赖关系(链接)仍然有效且工作正常。 | DBA |
测试。 | 如果这是测试周期,请执行查询测试,收集指标并修复所有问题。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
移动客户。 | 将应用程序客户端切换至新基础设施。 | DBA、应用程序所有者、系统管理员 |
提供支持。 | 在功能应用程序测试期间提供支持。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
关闭资源。 | 关闭 AWS DMS 复制实例和其他临时 AWS 资源。 | DBA,系统管理员 |
审查和项目文件。 | 查看和验证项目文档。 | DBA、应用程序所有者、系统管理员 |
收集指标。 | 收集指标,例如迁移时间、手动更改与工具辅助更改相比的百分比以及成本节约情况。 | DBA、应用程序所有者、系统管理员 |
结束项目。 | 结束迁移项目并提供反馈。 | DBA、应用程序所有者、系统管理员 |
停用源数据库。 | 停用本地 “我的SQL数据库”。 | DBA,系统管理员 |
相关资源
参考
教程和视频