本文介绍RDS的云盘如何变更为本地盘,同时也适用于本地盘变更为云盘。

  • 仅当RDS实例为RDS MySQL 5.7基础版时,可通过变更配置为高可用版,变为本地盘实例。
  • 其它情况,不支持直接变更存储类型(本地SSD盘、SSD云盘和ESSD云盘),必须通过数据迁移(DTS)将数据迁移到另一种存储类型的新实例中,具体请参见本文。

前提条件

  • 数据库类型如下:
    • RDS MySQL
    • RDS SQL Server
    • RDS PostgreSQL
  • 已创建目标存储类型的新实例,详情请参见创建RDS MySQL实例
  • 新实例的存储空间不能低于原实例的已使用空间。
  • 新实例和原实例地域相同。
  • 新实例的数据库类型、版本、系列要与原实例保持一致。
  • 当选择增量迁移时,原实例的binlog_row_image须设置为full

注意事项

  • 迁移后实例的信息都会改变,需要修改应用程序保证业务正常运行。
  • 迁移过程中,不支持DDL操作。
  • 结构迁移不支持event的迁移。
  • 如果使用了对象名映射功能,依赖这个对象的其他对象可能迁移失败。

操作步骤

  1. 进入DTS管理控制台
  2. 在左侧选择数据迁移,然后单击创建迁移任务创建迁移任务
  3. 设置以下参数。迁移任务设置
    参数 说明
    任务名称 默认情况下,DTS为每个任务自动生成一个任务名称,您可以修改这个名称,为任务配置一个具备业务意义的名称,便于后续识别。
    源库信息 实例类型 选择RDS实例
    实例地区 选择原实例所在的地域。
    RDS实例ID 选择原实例的ID。
    数据库账号 填写原实例的数据库账号,例如具备所有数据库读写权限的普通账号,或者高权限账号。
    数据库密码 数据库账号对应的密码。
    连接方式 通常选择非加密连接,对于支持并且开启了SSL加密的实例,请选择SSL安全连接
    目标库信息 实例类型 选择RDS实例
    实例地区 选择原实例所在的地域。
    RDS实例ID 选择新实例的ID。
    数据库账号 填写新实例的数据库账号,例如具备所有数据库读写权限的普通账号,或者高权限账号。
    数据库密码 数据库账号对应的密码。
    连接方式 通常选择非加密连接,对于支持并且开启了SSL加密的实例,请选择SSL安全连接
    说明 实例类型RDS实例ID的选择会影响其他参数的显示。
  4. 单击源库信息目标库信息区域内的测试连接
    说明 测试连接右侧出现测试通过,表示可以正常连接数据库,否则根据报错信息进行处理。
  5. 单击右下角授权白名单并进入下一步
  6. 选择迁移类型,并在迁移对象中选择要迁移的对象,单击 > 将要迁移的对象放入已选择对象中,单击预检查并启动,如下图所示。迁移类型及列表
    说明 如果要修改迁移的数据库的名称,可以在 已选择对象列表右侧单击 编辑,修改数据库的名称。
    修改数据库名称
  7. 此步骤为预检查不通过所需的操作,如果预检查通过,请直接参见步骤10。
    系统显示预检查结果,如下图所示。 预检查失败
  8. 单击检测结果失败的检测项后的 ,查看失败详细信息,根据失败详细信息完成错误排查。
  9. 错误排查完毕后,在迁移任务列表页面,选择当前迁移任务,单击启动重启任务
  10. 系统预检查通过后,单击下一步预检查通过
  11. 确认配置并勾选服务条款,单击立即购买并启动

后续操作

耐心等待迁移完成,迁移完成后,您需要修改应用程序,使用新实例的连接地址。

迁移完成