RDS PostgreSQL实例支持通过一键上云功能,实现RDS PostgreSQL实例间的数据迁移。
前提条件
RDS PostgreSQL实例需要满足以下条件:
- 源实例与目标实例大版本相同,当前支持PostgreSQL 10或以上版本。
- 目标实例为主实例,只读实例不支持一键上云。
- 目标实例的存储类型为云盘。
- 目标实例为空,无数据,可用存储空间大于等于源实例中数据大小的总和。
- 源实例和目标实例所使用的VPC网段不能冲突。
注意事项
RDS PostgreSQL实例跨地域迁移时,需要使用云企业网实现跨地域内网互通,会产生相关费用,具体请参见计费概览。
操作步骤
说明 本文以华北2(北京)的RDS PostgreSQL实例迁移到华东1(杭州)为例。
- 云企业网配置,使不同地域的两个RDS PostgreSQL实例内网互通。
- 创建云企业网实例。
- 登录云企业网管理控制台。
- 在云企业网实例页面,单击创建云企业网实例。
- 在创建云企业网实例页面,根据以下信息配置云企业网实例,然后单击确认。
配置 说明 名称 云企业网实例的名称。 名称在2~128个字符之间,以大小写字母或中文开头,可包含数字、短划线(-)或下划线(_)。
描述 云企业网实例的描述。 描述可以为空或可以填写2~256个中英文字符,不能以
http://
和https://
开头。
- 为云企业网实例添加VPC。
- 在云企业网实例页面,单击已创建的云企业网实例ID。
- 在基本信息页面,单击下图中VPC数量后的
图标,为云企业网实例添加VPC。
- 在连接网络实例页面,配置网络实例信息后,单击确认创建。说明 本步骤需要分别添加源实例和目标实例的VPC,因此需要添加两次,下表以添加源实例的VPC为例,添加目标实例VPC的操作方法相同,地域和网络实例参数,请修改为目标实例的地域和VPC。
参数 取值说明 实例类型 默认为专有网络(VPC),无需修改。 地域 选择源实例所在地域,本示例选择华北2(北京)。 转发路由器 默认当前地域下无转发路由器,系统将默认创建,分别选择转发路由器的主可用区和备可用区。 资源归属UID 选择同账号。 连接名称 自定义。 网络实例 选择源实例使用的VPC实例。可在RDS管理控制台的数据库连接中查看VPC ID。 选择VPC后,分别选择转发路由器配置的主备可用区对应的交换机。
创建完成后,结果示例如下:
- 购买跨地域带宽。
- 在云企业网实例页面,单击已创建的云企业网实例ID。
- 在基本信息页面,切换到带宽包管理页签,单击购买带宽包(预付费)。
- 在购买页面,根据以下信息配置带宽包,然后单击立即购买并完成支付。
配置项 说明 商品类型 - 非跨境:中国内地到中国内地的带宽包或非中国内地到非中国内地的带宽包。例如:中国内地到中国内地、亚太到北美。
- 跨境:中国内地到非中国内地的带宽包,例如:中国内地到北美。
本示例选择非跨境。
云企业网 默认选择当前云企业网,无需修改。带宽包购买成功后,带宽包自动绑定至该云企业网实例。 区域-A 选择参与互通的网络实例所在区域。本示例选择中国内地。 说明 带宽包创建后,不支持修改互通区域。 区域-B 选择参与互通的网络实例所在区域。本示例选择中国内地。 计费方式 显示带宽包的计费方式。默认为按带宽计费。 带宽值 选择带宽值。单位:Mbps。 带宽包名称 输入带宽包的名称。 购买时长 选择带宽包的购买时长。 选中到期自动续费可开启带宽包自动续费功能。
资源组 选择带宽包所属的资源组。 仅购买非跨境的带宽包时,支持配置该项。
购买完成后,结果示例如下:
- 设置跨地域带宽。
- 在云企业网实例页面,单击已创建的云企业网实例ID。
- 在基本信息页面,切换到带宽包管理页签,单击设置跨地域带宽。
- 在连接网络实例页面,配置跨地域连接信息,然后单击确定创建。
配置项 说明 实例类型 选择跨地域。 地域 源实例的地域。本示例选择华北2(北京)。 转发路由器 自动获取已创建的转发路由器,无需配置。 对端地域 目标实例的地域,本示例选择华东1(杭州)。 转发路由器 自动获取已创建的转发路由器,无需配置。 带宽包实例 选择云企业网实例已绑定的带宽包实例。 带宽 输入允许使用的带宽值。单位:Mbps。
创建成功后,结果示例如下:
- 创建云企业网实例。
- 源实例配置。
- 添加白名单。添加白名单的具体操作,请参见设置白名单,组内白名单请填写目标实例的VPC网段。
查看方法:
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
-
在左侧导航栏单击数据库连接,在网络类型中查看VPC网段。
- 创建高权限账号。创建账号的具体操作,请参见创建账号。账号类型请选择高权限账号。说明 高权限账号用于迁移上云,需要具备CREATE ROLE、REPLICATION和pg_monitor权限。如果您已有高权限的账号,则无需重复创建。
- 添加白名单。添加白名单的具体操作,请参见设置白名单,组内白名单请填写目标实例的VPC网段。
- 目标实例配置。
- 上云评估。
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
- 在左侧导航栏单击一键上云,单击上云评估页签。
- 在配置向导的选择迁移来源步骤,选择迁移来源为阿里云ECS自建PostgreSQL或阿里云RDS PostgreSQL后,单击下一步。
- 在目标库配置步骤,单击下一步。
- 在源库配置步骤,选中所有配置准备项,单击下一步。
- 在发起迁移评估步骤,配置源库信息。
参数 取值说明 迁移任务名 系统自动生成,无需修改。 源端 VPC IP/DNS 填写源实例的内网连接地址。具体请参见查看内网地址。 源端Port 填写源实例的端口,具体请参见查看端口。 用户名 源实例中创建的高权限数据库账号。 密码 源实例中创建的高权限数据库账号的密码。 - 单击创建迁移评估任务。说明 迁移评估任务期间,实例状态将变更为维护实例中。迁移评估完成后,您可以在上云评估页面查看迁移评估任务的状态。
- 只有状态为成功,您才能进行迁移上云步骤。
- 如果状态为失败,请单击操作列的查看报告,根据报错进行处理,常见报错请参见解读上云评估报告。
- 迁移上云。
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
- 在左侧导航栏单击一键上云,切换至迁移上云页签,单击创建迁移上云任务。
- 在创建迁移上云任务窗口中,从关联评估任务列表中选择已成功的上云评估任务。说明 选择关联评估任务后,源库类型、源端 IP/DNS、源端Port和用户名参数将会自动获取,无需配置。
- 单击发起迁移上云,系统将自动启动上云任务。重要 上云任务期间,实例状态将变更为迁入数据中。您可以对源实例进行读写,但请勿执行迁移、重启、变配等操作。
- 将目标RDS PostgreSQL提升为主库。
- 在迁移上云任务中,单击上云阶段列的链接,查看当前上云任务进度。
- 当上云阶段为增量同步时,可单击操作列的上云切换,将目标RDS PostgreSQL提升为主库,正式提供服务。
- 在切换上云窗口,根据上云须知提示,设置源实例只读或应用停止写入。说明 参考如下步骤,设置源实例只读:
- 通过设置实例参数功能,修改源实例参数rds_force_trans_ro_non_sup取值为on。
- 使用如下语句,中断所有现有会话。
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE usename not in ('replicator', 'monitor', 'pgsql', 'aurora') AND pid != pg_backend_pid();
- 选中所有复选框,单击立即切换,等待迁移完成。
- 上云评估。
后续配置
为了确保RDS PostgreSQL实例迁移后,应用侧在不修改业务代码的情况下依然正常连接,还需要在目标实例做如下配置。
-
修改目标实例白名单设置,与源实例白名单保持一致。更多信息,请参见设置白名单。
-
修改目标实例的连接地址,与源实例连接地址相同。修改方法请参见修改内外网连接地址。
以源实例连接地址为
pgm-aaa.pg.rds.aliyuncs.com
,目标实例连接地址为pgm-bbb.pg.rds.aliyuncs.com
为例,修改方法如下。-
将源实例连接地址
pgm-aaa.pg.rds.aliyuncs.com
修改为pgm-ccc.pg.rds.aliyuncs.com
。 -
将目标实例连接地址
pgm-bbb.pg.rds.aliyuncs.com
修改为pgm-aaa.pg.rds.aliyuncs.com
。
-
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/156362.html