本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用将微软SQL服务器数据库从亚马逊迁移EC2到亚马逊 DocumentDB AWS DMS
由 Umamaheswara Nooka 创作 () AWS
来源:亚马逊上的微软SQL服务器 EC2 | 目标:Amazon DocumentDB | R 类型:重构 |
环境:PoC 或试点 | 技术: CloudNative;数据库;迁移 | 工作负载:Microsoft |
AWS服务:亚马逊EC2;亚马逊 DocumentDB |
Summary
此模式描述了如何使用AWS数据库迁移服务 (AWSDMS) 将托管在亚马逊弹性计算云 (亚马逊EC2) 实例上的微软SQL服务器数据库迁移到亚马逊文档数据库(兼容 MongoDB)数据库。
AWSDMS复制任务读取SQL服务器数据库的表结构,在 Amazon DocumentDB 中创建相应的集合,然后执行满载迁移。
您也可以使用此模式将本地SQL服务器或适用于SQL服务器的亚马逊关系数据库服务 (AmazonRDS) 数据库实例迁移到亚马逊 DocumentDB。有关更多信息,请参阅AWS规范指南网站上的 “将 Microsoft SQL Server 数据库迁移到AWS云端” 指南。
先决条件和限制
先决条件
一个活动的 AWS 账户。
EC2实例上的现有SQL服务器数据库。
修复了服务器数据库AWSDMS中分配给的数据库 (db_own SQL er) 角色。有关更多信息,请参阅 S SQL erver 文档中的数据库级角色
。 熟悉如何使用
mongodump
、mongorestore
、mongoexport
和mongoimport
实用程序将数据移入和移出 Amazon DocumentDB 集群。微软SQL服务器管理工作室
,已安装并配置。
限制
Amazon DocumentDB 中的集群大小限制为 64 TB。有关更多信息,请参阅 Amazon DocumentDB 文档中的集群限制。
AWSDMS不支持将多个源表合并为一个 Amazon DocumentDB 集合。
如果AWSDMS处理源表中没有主键的任何更改,它将忽略源表中的大 object (LOB) 列。
架构
源技术堆栈
Amazon EC2
目标架构
目标技术堆栈
Amazon DocumentDB
工具
AWSDMS— AWS Database Migration Service (AWSDMS) 可帮助您轻松安全地迁移数据库。
Amazon DocumentDB – Amazon DocumentDB(与 MongoDB 兼容)是一种快速、可靠且完全托管的数据库服务。
亚马逊 EC2 — 亚马逊弹性计算云 (AmazonEC2) 在AWS云中提供可扩展的计算容量。
微软SQL服务器
— SQL 服务器是一个关系数据库管理系统。 SQLServer Management Studio (SSMS)
— SSMS 是一款用于管理SQL服务器的工具,包括访问、配置和管理SQL服务器组件。
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
创建一个VPC. | 登录AWS管理控制台并打开 Amazon VPC 控制台。创建具有IPv4CIDR区块范围的虚拟私有云 (VPC)。 | 系统管理员 |
创建安全组和网络ACLs。 | 在 Amazon VPC 控制台上,根据您的VPC要求为您创建安全组和网络访问控制列表(网络ACLs)。您还可以对这些配置使用默认设置。有关此故事和其他故事的详细信息,请参阅“相关资源”部分。 | 系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
创建 Amazon DocumentDB 集群。 | 打开 Amazon DocumentDB 控制台,然后选择“集群”。选择“创建”,然后创建一个具有一个实例的 Amazon DocumentDB 集群。重要:请务必使用您的VPC安全组配置此集群。 | 系统管理员 |
安装 mongo shell。 | Mongo Shell 是一个命令行实用程序,用于连接和查询 Amazon DocumentDB 集群。要安装它,请运行“/etc/yum.repos.d/mongodb-org-3.6.repo”命令以创建存储库文件。运行 “sudo yum install-y mongodb-org-shell” 命令来安装 mongo 外壳。要加密传输中数据,请下载 Amazon DocumentDB 的公有密钥,然后连接到您的 Amazon DocumentDB 实例。有关这些步骤的更多信息,请参阅“相关资源”部分。 | 系统管理员 |
在 Amazon DocumentDB 集群中创建数据库。 | 使用数据库名称运行“use”命令,以在 Amazon DocumentDB 集群中创建数据库。 | 系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
创建AWSDMS复制实例。 | 打开AWSDMS控制台并选择 “创建复制实例”。输入复制任务的名称和描述。选择实例类别、引擎版本、存储VPC、多可用区,并使其可公开访问。选择“高级”选项卡以设置网络和加密设置。指定维护设置,然后选择“创建复制实例”。 | 系统管理员 |
配置SQL服务器数据库。 | 登录 Microsoft SQL Server,为源端点和AWSDMS复制实例之间的通信添加入站规则。使用复制实例的私有 IP 地址作为源。重要:复制实例和目标终端节点应相同VPC。如果源实例和复制实例VPCs不同,请使用安全组中的备用源。 | 系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
创建源数据库和目标数据库端点。 | 打开AWSDMS控制台并选择 “Connect 源和目标数据库端点”。指定源数据库和目标数据库的连接信息。如果需要,请选择“高级”选项卡以设置“额外连接属性”的值。在端点配置中下载并使用证书捆绑包。 | 系统管理员 |
测试端点连接。 | 选择“运行测试”以测试连接。通过验证安全组设置以及源数据库实例和目标数据库实例与AWSDMS复制实例的连接,对任何错误消息进行故障排除。 | 系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
创建AWSDMS迁移任务。 | 在AWSDMS控制台上,选择 “任务”、“创建任务”。指定任务选项,包括源和目标端点名称以及复制实例名称。在“迁移类型”下,选择“迁移现有数据”和“仅复制数据更改”。选择“启动任务”。 | 系统管理员 |
运行AWSDMS迁移任务。 | 在 “任务设置” 下,指定表格准备模式的设置,例如 “什么都不做”、“在目标上删除表”、“截断” 和 “在复制中包括LOB列”。设置接受的最LOB大大小 AWSDMS,然后选择 “启用日志记录”。将“高级设置”保留为默认值,然后选择“创建任务”。 | 系统管理员 |
监控迁移。 | 在AWSDMS控制台上,选择 “任务”,然后选择您的迁移任务。选择“任务监控”以监控您的任务。当完成满载迁移并应用缓存更改后,任务停止。 | 系统管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
使用 mongo shell 连接到 Amazon DocumentDB 集群。 | 打开 Amazon DocumentDB 控制台,在“集群”下选择您的集群。在“连接和安全性”选项卡中,选择“使用 mongo shell 连接到此集群”。 | 系统管理员 |
验证迁移结果。 | 使用数据库名称运行“use”命令,然后运行“show collections”命令。运行“db.count()”;命令替换为数据库的名称。如果结果与源数据库匹配,则表示迁移成功。 | 系统管理员 |
相关资源
创建和配置 VPC
创建和配置 Amazon DocumentDB 集群
创建和配置AWSDMS复制实例
在中创建和测试源端点和目标端点 AWS DMS
迁移数据
其他资源