本文介绍如何通过RDS PostgreSQL的一键上云功能将ECS或IDC自建PostgreSQL数据库迁移到RDS PostgreSQL。该功能采用物理流复制方式,具有速度快、操作简单、稳定性好、场景覆盖全等特点,能够有效提高迁移效率。

前提条件

  • RDS PostgreSQL实例需满足以下条件。
    • 实例大版本与自建PostgreSQL相同,当前支持PostgreSQL 10、11、12、13和14
    • 实例需要为主实例,只读实例不支持一键上云。
    • 实例的存储类型为SSD、ESSD PL1、ESSD PL2或ESSD PL3云盘。
    • 实例要求数据库为空,无数据,可用存储空间大于等于自建PostgreSQL。
  • 自建PostgreSQL需要满足以下条件。

注意事项

迁移上云任务期间可以对自建PostgreSQL数据库进行读写,但请勿执行迁移、重启、变配等操作。

步骤一:上云评估

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏单击一键上云,单击上云评估页签。上云评估
  3. 在配置向导的选择迁移来源步骤,选择迁移来源后,单击下一步
  4. 目标库配置步骤,查看RDS PostgreSQL实例的地域VPC地址VPC网段。然后单击下一步目标库配置
  5. 源库配置步骤,选中所有已完成的配置准备项,单击下一步源库配置
    说明 源库配置步骤的具体操作,请参见(可选)ECS配置安全组创建迁移账号更新pg_hba.conf文件
  6. 发起迁移评估步骤,配置源库信息。发起迁移评估
    参数 取值说明
    迁移任务名 系统自动生成,无需修改。
    源端 VPC IP/DNS
    • ECS自建PostgreSQL数据库一键上云场景,配置ECS实例的私网IP。获取方法请参见查看IP地址
    • IDC自建PostgreSQL数据库一键上云场景,配置为DNS的IP。
    源端Port 自建PostgreSQL数据库的端口,可通过netstat -a | grep PGSQL命令查看。
    用户名 migratetest源库配置步骤创建的数据库账号。
    密码 123456源库配置步骤创建的数据库账号的密码。
  7. 单击创建迁移评估任务
    说明 迁移评估任务期间,实例状态将变更为维护实例中
    迁移评估完成后,您可以在上云评估页面查看迁移评估任务的状态。
    • 只有状态成功,您才能进行迁移上云步骤,具体请参见步骤二:迁移上云
    • 如果状态失败,请单击操作列的查看报告,根据报错进行处理,常见报错请参见解读上云评估报告

    处理报错后,您可以单击操作列的重新评估,重新开始评估任务。

    上云评估报告

步骤二:迁移上云

说明 只有上云评估状态为成功时,才能执行本步骤。
  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏单击一键上云,切换至迁移上云页签,单击创建迁移上云任务。创建上云任务
  3. 创建迁移上云任务窗口中,从关联评估任务列表中选择步骤一:上云评估中已成功的上云评估任务。创建迁移上云任务
    说明 选择关联评估任务后,源库类型源端 IP/DNS源端Port用户名参数将会自动获取,无需配置。
  4. 单击发起迁移上云,系统将自动启动上云任务。
    注意 上云任务期间,实例状态将变更为迁入数据中。您可以对自建PostgreSQL数据库进行读写,但请勿执行迁移、重启、变配等操作。
  5. 上云切换。
    1. 在迁移上云任务中,单击上云阶段列的链接,查看当前上云任务进度。上云进度
    2. 当上云阶段为增量同步时,可单击操作列的上云切换,将RDS PostgreSQL提升为主库,正式提供服务。
    3. 切换上云窗口,根据上云须知提示,设置源实例只读或应用停止写入。切换上云
      说明 设置自建PostgreSQL数据库只读使用superuser用户配置如下命令:
      ALTER SYSTEM SET default_transaction_read_only=on;
      SELECT pg_reload_conf();
    4. 选中所有复选框,单击立即切换,等待迁移完成。
    上云完成