许多个人网站管理员或小型和微型企业用户受到云业务预算和方案要求的限制。 最初,他们只选择云服务器,而没有选择RDS之类的数据库。
但是,随着业务量的增加,数据库服务器上的压力也会增加。 而且数据库越大,数据的安全性就越重要,随时存在数据丢失的风险。这个时候,很多人会选择云数据库RDS。
这就存在一个问题, 如何安全地将服务器自建数据库的数据迁移到RDS呢?
这篇教程主要分享一下,使用阿里云数据传输 DTS 把服务器自建数据库迁移到RDS、MongoDB、Redis、DRDS、PetaData 或 OceanBase 的方法。
第一步:用 RDS 数据库所属阿里云账号登录 DTS 数据传输控制台,单击 ” 创建迁移任务 “,开始任务配置。
注意:如果您是第一次登陆,会弹出授权提示,点击 “ 前往RAM角色授权 ” ,然后在弹出点击 “ 同意授权 ”。
第二步:设置迁移任务的名称、源库信息和目标库信息等,填完对应信息后,可以点击 “ 测试连接 ” 判断信息填写是否正常,如果测试正确,则点击右下角 “ 授权白名单并进入下一步”。
各项信息说明:
1、任务名称
DTS为每个任务自动生成一个任务名称,任务名称没有唯一性要求。您可以根据需要修改任务名称,建议为任务配置具有业务意义的名称,便于后续的任务识别。
2、源实例信息
- 实例类型:选择 ECS上的自建数据库
- ECS实例ID: 配置迁移的源ECS实例的实例ID。DTS支持经典网络、VPC网络的ECS实例。如果ECS实例跟目标实例在不同地域,那么ECS上面必须挂载公网EIP。
- 数据库类型:选择ECS上自建数据库的数据库类型,例如Oracle/MySQL/SQLServer/PostgreSQL/Redis/MongoDB等。
- 数据库名称: 如果自建数据库为PostgreSQL/MongoDB, 那么需要配置数据库名称。这个数据库名称为连接ECS自建数据库时使用的默认数据库。
- 数据库账号:连接自建数据库的账号。
- 数据库密码:上面数据账号对应的密码。
3、目标实例信息
- 实例类型: 选择要迁入的实例对应的实例类型,包括RDS/MongoDB/Redis/DRDS/PetaData/OceanBase等。
实例ID: 配置迁移的目标实例的实例ID。 - 数据库名称:如果数据库类型为PostgreSQL/PPAS/MongoDB, 那么需要配置数据库名称。这个数据库名称为连接实例时使用的默认数据库。
- 数据库账号:连接实例的账号。
- 数据库密码:上面数据账号对应的密码。
第三步:迁移类型及迁移对象选择。
各选项说明如下:
1、迁移类型,对于不同的数据库类型,DTS 支持的迁移类型不同。
- 如果只需要进行全量迁移,那么迁移类型选择:结构迁移+全量数据迁移。
- 对于支持增量迁移的数据库类型,如果需要进行不停机迁移,迁移类型选择:结构迁移+全量数据迁移+增量数据迁移。
2、迁移对象
这个步骤选择要迁移的对象。迁移对象的选择粒度细化为:库、表、列三个粒度。默认情况下,对象迁移到目标实例后,对象名跟源实例一致。如果您迁移的对象在源实例跟目标实例上名称不同,那么需要使用DTS提供的对象名映射功能,详细使用方式可以参考库表列映射。
第四步:预检查。
在迁移任务正式启动之前,会先进行前置预检查,只有预检查通过后,才能成功启动迁移。如果预检查失败,那么可以点击具体检查项后的按钮,查看具体的失败详情,并根据失败原因修复后,重新进行预检查。
第五步:启动迁移任务。
当预检查通过后,可以启动迁移任务,任务启动成功后,可以在任务列表中查看迁移的具体状态及迁移进度。
注意:如果选择了增量迁移,那么进入增量迁移阶段后,源库的更新写入都会被DTS同步到目标实例。迁移任务不会自动结束。如果用户只是为了迁移,那么建议在增量迁移无延迟的状态时,源库停写几分钟,等待增量迁移再次进入无延迟状态后,停止掉迁移任务,直接将业务切换到目标实例上即可。