515
windows
从本地MongoDB迁移到MongoDB实例__数据迁移_用户指南_数据传输-阿里云
使用数据传输DTS可以将本地的MongoDB实例的数据迁移至RDS For MongoDB。Mongodb迁移支持增量数据同步功能,可以实现在本地应用不停服的情况下,平滑完成MongoDB数据库的迁移工作。
本小节简单介绍使用DTS进行MongoDB->RDS For MongoDB数据迁移的任务配置流程。
迁移类型简介
对于MongoDB->云数据库 MongoDB数据迁移,DTS支持全量数据迁移及增量数据迁移,这个迁移类型的功能及限制如下。
全量数据迁移
数据传输DTS将源数据库迁移对象的存量数据全部迁移到目标实例。
增量数据迁移
增量数据迁移将迁移过程中,本地MongoDB实例的增量更新数据同步到云数据库MongoDB,最终本地MongoDB同云数据库MongoDB进入动态数据同步的过程。使用增量数据迁移,可以实现在本地MongoDB正常提供服务的时候,平滑完成MongoDB->RDS For MongoDB的数据迁移。
迁移功能
MongoDB全量数据迁移支持
- 支持database 迁移
- 支持collection 迁移
- 支持index 迁移
MongoDB增量数据迁移支持
- 支持document 新增、删除、更新 操作的同步
- 支持collection新建、删除 操作的同步
- 支持database 新建、删除 操作的同步
- 支持index 新建、删除 操作的同步
迁移权限要求
当使用DTS进行MongoDB-> 云数据库MongoDB迁移时,不同迁移类型,对源跟目标MySQL实例的迁移帐号权限要求如下:
迁移类型 | 全量数据迁移 | 增量数据迁移 |
---|---|---|
本地MongoDB | read | 待迁移库的read admin的read权限 local的read权限 |
目的MongoDB实例 | readWrite | readWrite |
迁移任务配置
下面详细介绍使用DTS将本地的MongoDB迁移到云数据库MongoDB的任务配置流程。
迁移帐号创建
迁移任务配置,需要提供本地自建MongoDB实例及目标MongoDB云数据库的迁移账号,迁移账号所需权限详见上面的 迁移权限要求 一节。
如果您的本地MongoDB或MongoDB云数据库的迁移账号尚未创建,那么可以参考如下流程创建迁移账号:
db.createUser({user:"username",pwd:"password",roles:[{role:"rolename1",db:"database_name1"},{role:"rolename2",db:"database_name2"}]})
参数说明:
- username: 要创建的账号
- password: 上面账号对应的密码
- rolename1/rolename2:待授权给username的角色名,例如上面的read, readWrite
database_name1/database_name2: 只将database_name1/database_name2上的角色role1/role2授权给username
关于MongoDB的角色授权也可以参考 MongoDB Create User说明
迁移任务配置
当上面的所有前置条件都配置完成后,就可以开始正式的数据迁移了。下面详细介绍迁移任务配置流程。
- 进入数据传输DTS控制台,点击右上角的创建迁移任务,开始迁移任务配置。
本地MongoDB跟目标MongoDB实例的连接信息配置。
这个步骤主要配置 迁移任务名称,本地MongoDB连接信息及目标MongoDB云数据库连接信息。其中:
任务名称
DTS为每个任务自动生成一个任务名称,任务名称没有唯一性要求。您可以根据需要修改任务名称,建议为任务配置具有业务意义的名称,便于后续的任务识别。
源实例信息
- 实例类型:选择 有公网IP的自建数据库
- 数据库类型: 选择 MongoDB
- 主机名或IP地址: 配置MongoDB访问地址,这个地址必须为公网访问方式
- 端口:本地MongoDB实例的监听端口
- 数据库名称:连接MongoDB实例的默认数据库名
- 数据库账号:本地MongoDB实例的连接账号
- 数据库密码:本地MongoDB实例连接账号对应的密码
目标实例信息
- 实例类型:选择 MongoDB实例
- MongoDB实例ID: 配置迁移的目标MongoDB实例的实例ID。 DTS支持经典网络的MongoDB实例。如果您的MongoDB实例为VPC网络的实例,那么需要切换到经典网络模式后,再使用DTS进行迁移
- 数据库名称:连接MongoDB的默认数据库名
- 数据库账号:连接MongoDB实例的连接账号
- 数据库密码:上面数据库账号对应的密码
当配置完连接信息后,点击右下角 授权白名单并进入下一步 进行白名单授权。这个步骤DTS会将DTS服务器的IP地址添加到目标MongoDB云数据库的白名单中,避免因为MongoDB实例设置了白名单,DTS服务器连接不上MongoDB实例导致迁移失败。
选择迁移对象及迁移类型。
迁移类型
对于MongoDB,支持 全量数据迁移、增量数据迁移。
如果只需要进行全量迁移,那么迁移类型选择:全量数据迁移。
如果需要进行不停机迁移,那么迁移类型选择:全量数据迁移+增量数据迁移。
迁移对象
这个步骤需要选择要迁移的对象。迁移对象选择的粒度可以为:库、collection/function 两个粒度。默认情况下,对象迁移到MongoDB实例后,对象名跟本地MongoDB实例一致。如果您迁移的对象在源实例跟目标实例上名称不同,那么需要使用DTS提供的对象名映射功能,详细使用方式可以参考库表列映射。
预检查。
在迁移任务正式启动之前,会先进行前置预检查,只有预检查通过后,才能成功启动迁移。预检查的内容及修复方式可以参考本文末尾的 预检查简介 一节。
如果预检查失败,那么可以点击具体检查项后的按钮,查看具体的失败详情,并根据失败原因修复后,重新进行预检查。
启动迁移任务。
当预检查通过后,可以启动迁移任务,任务启动成功后,可以在任务列表中查看迁移的具体状态及迁移进度。
至此,完成本地MongoDB数据库到MongoDB实例的数据迁移任务配置。
预检查
DTS在启动迁移之前,会进行前置预检查,本小节简单介绍MongoDB->RDS For MongoDB的预检查内容:
检查项 | 检查内容 | 备注 |
---|---|---|
源库连接性检查 | 检查DTS服务器跟本地MongoDB实例的连通性 | (1) 填写信息是否有误?如果填写信息有误,请修改后重新预检查 (2) 检查端口是否配置从其他服务器连接访问 |
目标库连接性检查 | 检查DTS服务器跟目标MongoDB实例的连通性 | 检查填写信息是否有误,如果有误请先修改后重新预检查 |
源库版本检查 | 检查本地MongoDB的版本,DTS是否支持 | 请先升级版本到3.2后,重新预检查 |
源库权限检查 | 检查本地MongoDB提供的迁移账号的权限是否满足需求 | 如果检查失败,请参照 迁移账号创建 一节授权后,重新预检查 |
目的库权限检查 | 检查目的MongoDB数据库提供的迁移账号的权限是否满足需求 | 如果检查失败,请参照 迁移账号创建 一节授权后,重新预检查 |
增量拓扑冲突检查 | 检查MongoDB实例上是否有其他增量迁移任务正在运行 | 如果检查失败,那么需要结束或删除其他的增量迁移任务后,重新预检查 |
最后更新:2016-11-23 16:29:11
上一篇:
本地PostgreSQL迁移至RDS for PostgreSQL__数据迁移_用户指南_数据传输-阿里云
下一篇:
自建Redis到云Redis实例的迁移方案__数据迁移_用户指南_数据传输-阿里云
参数详情__附录_API使用手册_媒体转码-阿里云
步骤 5:备案__搭建 WordPress 网站_建站教程_云服务器 ECS-阿里云
容器管理__用户指南_企业级分布式应用服务 EDAS-阿里云
账户充值__金融云新手上路_金融云-阿里云
搜索相关性函数__应用高级配置_产品使用手册_开放搜索-阿里云
Java SDK 历史迭代版本__历史版本 SDK 下载_SDK 参考_表格存储-阿里云
API管理__使用手册(开放API)_API 网关-阿里云
购买流程__购买指导_消息服务-阿里云
实时路况_阿里云帮助中心-阿里云,领先的云计算服务提供商
什么是MaxCompute__产品简介_大数据计算服务-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云