网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
态势感知 SA
认证测试中心 CTC
边缘安全 EdgeSec
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts 盘古助手
华为云Astro大屏应用
计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
云手机服务器 CPH
专属主机 DeH
弹性伸缩 AS
镜像服务 IMS
函数工作流 FunctionGraph
云耀云服务器(旧版)
VR云渲游平台 CVR
Huawei Cloud EulerOS
云化数据中心 CloudDC
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
CDN与智能边缘
内容分发网络 CDN
智能边缘云 IEC
智能边缘平台 IEF
CloudPond云服务
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
态势感知 SA
认证测试中心 CTC
边缘安全 EdgeSec
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
可信智能计算服务 TICS
推荐系统 RES
云搜索服务 CSS
数据可视化 DLV
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
湖仓构建 LakeFormation
智能数据洞察 DataArts Insight
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
开天aPaaS
应用平台 AppStage
开天企业工作台 MSSE
开天集成工作台 MSSI
API中心 API Hub
云消息服务 KooMessage
交换数据空间 EDS
云地图服务 KooMap
云手机服务 KooPhone
组织成员账号 OrgID
云空间服务 KooDrive
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
区块链
区块链服务 BCS
数字资产链 DAC
华为云区块链引擎服务 HBS
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
价格
成本优化最佳实践
专属云商业逻辑
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
其他
管理控制台
消息中心
产品价格详情
系统权限
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
云服务信任体系能力说明
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts 盘古助手
华为云Astro大屏应用
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
存储容灾服务 SDRS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
云存储网关 CSG
专属分布式存储服务 DSS
数据工坊 DWR
地图数据 MapDS
键值存储服务 KVS
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
云原生服务中心 OSC
应用服务网格 ASM
华为云UCS
数据库
云数据库 RDS
数据复制服务 DRS
文档数据库服务 DDS
分布式数据库中间件 DDM
云数据库 GaussDB
云数据库 GeminiDB
数据管理服务 DAS
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
AI开发平台ModelArts
华为HiLens
图引擎服务 GES
图像识别 Image
文字识别 OCR
自然语言处理 NLP
内容审核 Moderation
图像搜索 ImageSearch
医疗智能体 EIHealth
企业级AI应用开发专业套件 ModelArts Pro
人脸识别服务 FRS
对话机器人服务 CBS
语音交互服务 SIS
人证核身服务 IVS
视频智能分析服务 VIAS
城市智能体
自动驾驶云服务 Octopus
盘古大模型 PanguLargeModels
IoT物联网
设备接入 IoTDA
全球SIM联接 GSL
IoT数据分析 IoTA
路网数字化服务 DRIS
IoT边缘 IoTEdge
设备发放 IoTDP
企业应用
域名注册服务 Domains
云解析服务 DNS
企业门户 EWP
ICP备案
商标注册
华为云WeLink
华为云会议 Meeting
隐私保护通话 PrivateNumber
语音通话 VoiceCall
消息&短信 MSGSMS
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
云桌面 Workspace
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMA Exchange
API全生命周期管理 ROMA API
政企自服务管理 ESM
视频
实时音视频 SparkRTC
视频直播 Live
视频点播 VOD
媒体处理 MPC
视频接入服务 VIS
数字内容生产线 MetaStudio
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
专属云
专属计算集群 DCC
开发者工具
SDK开发指南
API签名指南
DevStar
华为云命令行工具服务 KooCLI
Huawei Cloud Toolkit
CodeArts API
云化转型
云架构中心
云采用框架
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
支持计划
专业服务
合作伙伴支持计划
我的凭证
华为云公共事业服务云平台
工业软件
工业数字模型驱动引擎
硬件开发工具链平台云服务
工业数据转换引擎云服务
文档首页/ 云数据库 GaussDB/ 用户指南/ 数据库迁移/ 使用DRS将Oracle数据库迁移至GaussDB

使用DRS将Oracle数据库迁移至GaussDB

更新时间:2024-12-25 GMT+08:00
分享

操作场景

本章主要介绍如何使用DRS的实时同步功能将本地Oracle数据库实时迁移至华为云GaussDB。通过全量+增量同步,实现源数据库Oracle与目标数据库GaussDB的数据长期同步。全量同步可以实现数据迁移;增量同步可以实现实时同步源端和目标端两个库之间的数据。

步骤一:创建VPC和安全组

步骤二:创建GaussDB实例

步骤三:迁移前构造数据

步骤四:迁移数据库

步骤五:迁移后进行数据校验

解决问题

  • 企业业务高速发展,传统数据库扩容性差,迫切需要分布式化改造。
  • 传统数据库需要自购并安装服务器、系统、数据库等软件,运维成本高、难度大。
  • 传统数据库性能瓶颈问题,复杂查询性能较差。
  • 如何不中断业务并且平滑地实现数据迁移。

前提条件

  • 拥有华为云实名认证账号。
  • 账户余额大于等于0元。
  • 如果测试使用,需要自行在本地搭建Oracle数据库。
  • 已知待迁移Oracle数据库的IP地址,端口,账户和密码。

业务架构图

迁移原理

本次迁移使用全量+增量同步功能,原理如下:

  1. 全量同步阶段,先进行结构迁移,例如表、主键、唯一键的迁移。
  2. 结构迁移完成后,启动增量数据抽取,以确保全量数据同步期间的增量数据完整的抽取到DRS实例。
  3. 启动全量迁移任务。
  4. 全量迁移完成后自动进入增量同步,从全量迁移开始抽取的位点开始回放。
  5. 当增量回放全部完成后,启动比对任务进行一致性检查,支持实时比对。
  6. 实时比对数据一致时,可以启动业务割接。
图1 迁移原理图

资源规划

本章中的资源规划仅作为演示,实际业务场景资源以用户实际需求为准。

表1 资源规划

类别

子类

规划

备注

VPC

VPC名称

vpc-src-172

自定义,易理解可识别。

所属Region

测试Region

现网实际选择时建议选择和自己业务区最近的Region,减少网络时延。

可用区

可用区3

-

子网网段

172.16.0.0/16

子网选择时建议预留足够的网络资源。

子网名称

subnet-src-172

自定义,易理解可识别。

本地Oracle数据库

名称

orcl

自定义,易理解可识别。

规格

16vCPUs | 32GB

-

数据库版本

11.2.0.1

-

数据库用户

test_info

可以自定义用户,但是迁移时最小权限为:CREATE SESSION,SELECT ANY TRANSACTION, SELECT ANY TABLE, SELECT ANY DICTIONARY, EXECUTE_CATALOG_ROLE

GaussDB

实例名

Auto-drs-gaussdbv5-tar-1

自定义,易理解可识别。

数据库版本

GaussDB V2.0-8.103企业版

-

实例类型

分布式版,3CN,3DN,3副本

本示例中为分布式实例。

部署形态

独立部署

-

事务一致性

强一致性

-

分片数量

3

-

协调节点数量

3

-

存储类型

超高IO

-

可用区

可用区2

本示例中选择了单可用区,实际建议选择多可用区,以提高实例的高可用性。

性能规格

独享型(1:8) 8 vCPUs | 64GB

本示例中为测试实例,选择较小的测试规格,实际选择规格以业务诉求为准。

存储空间

480G

本示例中为测试实例,选择较小的存储空间,实际选择存储空间大小以业务诉求为准。

加密磁盘

不加密

本示例中选择磁盘不加密,选择加密后会提高数据安全性,但对数据库读写性能有少量影响,实际请按照业务使用策略进行选择。

DAS登录数据库

数据库引擎

GaussDB

-

数据库来源

GaussDB

勾选本示例中创建的GaussDB实例

数据库名称

postgres

-

登录用户名

root

-

密码

-

本示例中创建的GaussDB实例root用户密码

DRS迁移任务

迁移任务名

DRS-test-info

自定义。

目标库名称

test_database_info

自定义,易理解可识别,但是需要确保兼容模式为Oracle模式。

源数据库引擎

Oracle

-

目标数据库引擎

GaussDB

-

网络类型

公网网络

本示例中采用公网网络。

步骤一:创建VPC和安全组

创建VPC和安全组,为创建GaussDB实例准备网络资源和安全组。

  1. 登录华为云控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左侧的服务列表图标,选择网络 > 虚拟私有云 VPC。进入虚拟私有云信息页面。
  4. 单击“创建虚拟私有云”购买VPC。
    图2 基本信息

    图3 子网设置

  5. 单击“立即创建”。
  6. 返回VPC列表,查看创建VPC是否创建完成。

    当VPC列表的VPC状态为“可用”时,表示VPC创建完成。

  1. 登录华为云控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左侧的服务列表图标,选择网络 > 虚拟私有云

    进入虚拟私有云信息页面。

  4. 选择“访问控制 > 安全组”。
  5. 单击“创建安全组”。
  6. 填写安全组名称等信息。
    图4 基本信息

  7. 选择“入方向规则”,单击“添加规则”。

  8. 配置入方向规则,添加源库的IP地址。
    图5 配置入方向规则

  9. 单击“立即创建”。
  1. 登录华为云控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左侧的服务列表图标,选择网络 > 虚拟私有云 VPC。进入虚拟私有云信息页面。
  4. 单击“创建虚拟私有云”购买VPC。
    图2 基本信息

    图3 子网设置

  5. 单击“立即创建”。
  6. 返回VPC列表,查看创建VPC是否创建完成。

    当VPC列表的VPC状态为“可用”时,表示VPC创建完成。

  1. 登录华为云控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左侧的服务列表图标,选择网络 > 虚拟私有云

    进入虚拟私有云信息页面。

  4. 选择“访问控制 > 安全组”。
  5. 单击“创建安全组”。
  6. 填写安全组名称等信息。
    图4 基本信息

  7. 选择“入方向规则”,单击“添加规则”。

  8. 配置入方向规则,添加源库的IP地址。
    图5 配置入方向规则

  9. 单击“立即创建”。

步骤二:创建GaussDB实例

创建GaussDB实例,作为迁移任务目标库。

  1. 登录华为云控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左侧的服务列表图标,选择数据库 > 云数据库 GaussDB
  4. 在左侧导航栏选择GaussDB > 实例管理
  5. 单击“购买数据库实例”。
  6. 参考图6,配置实例名称,选择计费模式、产品类型、数据库引擎版本、实例类型、事务一致性、分片数量、协调节点数量和可用区。
    图6 基本信息

  7. 选择实例规格、存储空间大小。
    图7 实例规格

  8. 选择实例所属的VPC(创建VPC)和安全组(创建安全组),配置数据库端口。
    图8 选择VPC和安全组

  9. 配置实例密码等信息。
    图9 配置实例密码等信息

  10. 单击“立即购买”,确认信息并提交。
  11. 返回实例列表。

    当实例运行状态为“正常”时,表示实例创建完成。

步骤三:迁移前构造数据

迁移前需要在源库构造一些数据类型,供迁移完成后验证数据。本章中端到端的数据为测试数据,仅供参考。

DRS支持的数据类型如下所示:

表2 数据类型映射关系

源库数据类型

目标库数据类型

源库数据类型做主键,同步能力

源库数据类型做非主键,同步能力

源库数据类型做主键,对比能力

源库数据类型做非主键,对比能力

备注

CHAR

character

支持

支持

支持,忽略字符前后的空格

支持,忽略字符前后的空格

-

VARCHAR

character varying

支持

支持

支持

支持

源目标库数据表示范围不同,存在精度损失。

VARCHAR2

character varying

支持

支持

支持

支持

-

NCHAR

character

支持

支持

支持,忽略字符前后的空格

支持,忽略字符前后的空格

-

NVARCHAR2

nvarchar2

支持

支持

支持

支持

-

NUMBER

numeric

支持

支持

支持

支持

-

NUMBER (6,3)

numeric(6,3)

支持

支持

支持

支持

-

NUMBER (6,0)

Integer

支持

支持

支持

支持

-

NUMBER (3)

smallint

支持

支持

支持

支持

-

NUMBER (6,-2)

integer

支持

支持

支持

支持

-

BINARY_FLOAT

real

不支持(目标库不支持做主键建表)

支持

不支持

支持

源目标库数据表示范围不同,存在精度损失。

BINARY_DOUBLE

double precision

不支持(目标库不支持做主键建表)

支持

不支持

支持

-

FLOAT

real

不支持(目标库不支持做主键建表)

支持

不支持

支持

源目标库数据表示范围不同,存在精度损失。

INT

numeric

支持

支持

支持

支持

-

INTEGER

numeric

支持

支持

支持

支持

-

DATE

date

支持

支持

不支持

支持

DRS在目标库建表时类型为date,此时源目标库数据表示范围不同,存在精度损失,不支持对比。

TIMESTAMP

timestamp(6) without time zone

支持

支持

不支持

校验到小数点后6位

源库使用限制:支持的最大精度是6。

TIMESTAMP_TZ

timestamp(6) with time zone

不支持(源库不支持做主键建表)

支持

不支持

过滤该列

-

TIMESTAMP_LTZ

timestamp(6) with time zone

不支持(目标库不支持做主键建表)

支持

不支持

过滤该列

-

INTERVAL_YM

interval year to month

支持

支持

不支持

不支持

增量同步不支持该类型。

INTERVAL_DS

interval day to second

支持

支持

不支持

不支持

增量同步不支持该类型。源库使用限制:支持的最大精度是6。

BLOB

bytea

不支持(源库不支持做主键建表)

支持

不支持

过滤该列

-

CLOB

text

不支持(源库不支持做主键建表)

支持

不支持

过滤该列

-

NCLOB

text

不支持(源库不支持做主键建表)

支持

不支持

过滤该列

-

LONG

text

不支持(源库不支持做主键建表)

支持

不支持

过滤该列

-

LONG_RAW

bytea

不支持(源库不支持做主键建表)

支持

不支持

过滤该列

-

RAW

bytea

不支持(目标库不支持做主键建表)

支持

不支持

支持

-

RowID

character varying(18)

支持

支持

支持

支持

-

BFILE

-

不支持

不支持

不支持

不支持

源库使用限制:不支持bfile类型。

XMLTYPE

-

不支持

不支持

不支持

不支持

源库使用限制:不支持xmltype类型。

UROWID

-

不支持

不支持

不支持

不支持

全量增量都不支持同步。

sdo_geometry

-

不支持

不支持

不支持

不支持

源库使用限制:不支持sdo_geometry类型。

NUMBER(*,0)

numeric

支持

支持

支持

支持

-

执行如下步骤在源库构造数据:

  1. 根据本地的Oracle数据库的IP地址,通过数据库连接工具连接数据库。
  2. 根据DRS支持的数据类型,在源库执行语句构造数据。
    1. 创建一个测试用的用户。

      create user test_info identified by xxx;

      test_info为本次迁移创建的用户,xxx为用户的密码,请根据实际情况替换。

    2. 给用户赋权。

      grant dba to test_info;

    3. 在当前用户下创建一个数据表。

      CREATE TABLE test_info.DATATYPELIST(

      ID INT,

      COL_01_CHAR______E CHAR(100),

      COL_02_NCHAR_____E NCHAR(100),

      COL_03_VARCHAR___E VARCHAR(1000),

      COL_04_VARCHAR2__E VARCHAR2(1000),

      COL_05_NVARCHAR2_E NVARCHAR2(1000),

      COL_06_NUMBER____E NUMBER(38,0),

      COL_07_FLOAT_____E FLOAT(126),

      COL_08_BFLOAT____E BINARY_FLOAT,

      COL_09_BDOUBLE___E BINARY_DOUBLE,

      COL_10_DATE______E DATE DEFAULT SYSTIMESTAMP,

      COL_11_TS________E TIMESTAMP(6),

      COL_12_TSTZ______E TIMESTAMP(6) WITH TIME ZONE,

      COL_13_TSLTZ_____E TIMESTAMP(6) WITH LOCAL TIME ZONE,

      COL_14_CLOB______E CLOB DEFAULT EMPTY_CLOB(),

      COL_15_BLOB______E BLOB DEFAULT EMPTY_BLOB(),

      COL_16_NCLOB_____E NCLOB DEFAULT EMPTY_CLOB(),

      COL_17_RAW_______E RAW(1000),

      COL_19_LONGRAW___E LONG RAW,

      COL_24_ROWID_____E ROWID,

      PRIMARY KEY(ID)

      );

    4. 插入两行数据。

      insert into test_info.DATATYPELIST values(4,'huawei','xian','shanxi','zhongguo','shijie', 666,12.321,1.123,2.123,sysdate,sysdate,sysdate,sysdate,'hw','cb','df','FF','FF','AAAYEVAAJAAAACrAAA');

      insert into test_info.DATATYPELIST values(2,'Migrate-test','test1','test2','test3','test4', 666,12.321,1.123,2.123,sysdate,sysdate,sysdate,sysdate,'hw','cb','df','FF','FF','AAAYEVAAJAAAACrAAA');

    5. 使语句生效。

      commit;

  3. 在目标端创建库。
    1. 登录华为云控制台
    2. 单击管理控制台左上角的,选择区域。
    3. 单击左侧的服务列表图标,选择数据库 > 数据管理服务 DAS
    4. 在数据管理服务DAS左侧导航栏,单击“开发工具”,进入开发工具数据库登录列表页面。
    5. 单击“新增数据库实例登录”,打开新增数据库实例登录窗口。
    6. 选择“数据库引擎”、“数据库来源”、目标实例,填写登录用户名、密码以及描述(非必填项)信息,开启SQL执行记录功能。
    1. 单击“测试连接”测试连接是否成功。

      如测试连接成功,将提示“连接成功”,您可继续新增操作。如测试连接失败,将提示连接失败原因,您需根据提示信息进行修改,以便新增数据库登录成功。

    2. 设置完登录信息,单击“立即新增”。
    3. 新增完成后,单击新增登录的“登录”,登录当前数据库。
      图10 登录数据库

    4. 选择“SQL操作”> “SQL查询”进入SQL查询页面。

    5. 执行如下语句创建兼容Oracle的数据库。
      此例中为:test_database_info,请根据实际情况选择。
      CREATE DATABASE test_database_info DBCOMPATIBILITY 'ORA';

步骤四:迁移数据库

创建DRS实例,将本地Oracle上的test_info数据库迁移到GaussDB实例中test_database_info数据库中。

迁移前检查

在创建任务前,需要针对迁移条件进行手工自检,以确保您的迁移任务更加顺畅。

在迁移前,您需要参考入云使用须知获取迁移相关说明。

创建迁移任务

  1. 登录华为云控制台
  2. 单击管理控制台左上角的,选择区域。

    选择目标实例所在的区域。

  3. 单击左侧的服务列表图标,选择数据库 > 数据复制服务 DRS
  4. 左侧导航栏选择“实时同步管理”,单击“创建同步任务”。
  5. 配置同步实例信息。
    1. 选择区域,计费模式,项目,填写任务名称。

    2. 配置同步实例信息,选择“数据流动方向”、“源数据库引擎”、“目标数据库引擎”、“网络类型”、“DRS任务类型”、“目标数据库实例”、“同步实例所在子网”、“同步模式”、“指定公网IP”(网络类型选择公网网络时需要配置该参数)、“规格类型”、“可用区”和“企业项目”,选填“标签”。

    3. 单击“开始创建”。
  6. 配置源库及目标库信息。
    1. 选择“是否配置自建DNS服务”、填写源库的IP、端口、用户、密码等信息。

      填写完成后,需要单击“测试连接”,测试连接信息是否正确。

    2. 填写目标库的账户和密码。

      填写完成后,需要单击“测试连接”,测试连接信息是否正确。

    3. 单击“下一步”,仔细阅读提示内容后,单击“同意,并继续”。

  7. 设置同步。
    1. 在源库选择需要迁移的数据库和表。本次迁移中选择“test_info”中的“DATATYPELIST”表。

    2. 选择完成后,可以设置迁移后是否重新命名库名和表名。

    3. 本次迁移将表名重新命名为“DATATYPELIST_After”。

      注意重新命名时不要使用特殊符号,否则会导致迁移后执行SQL语句报错。

    4. 确认重命名设置内容,单击“下一步”。

  8. 高级设置。

    本页面内容仅做确认,无法修改,确认完成后单击“下一步”。

  9. 数据加工。
    在该页面可以对迁移的表进行加工。包括选择迁移的列,重新命名迁移后的列名,本次迁移将“COL_01_CHAR______E”重新命名为“new-line”。
    1. 选择需要加工的表。

    2. 编辑“COL_01_CHAR______E”列。

    3. 将“COL_01_CHAR______E”重新命名为“new-line”,单击“确定”。

    4. 单击“下一步”。
  10. 预检查。
    1. 所有配置完成后,进行预检查,确保迁移成功。

    2. 对于未通过的项目,根据检查结果中的提示信息修复,修复完成后,单击“重新校验”,直到预检查通过率为100%。

    3. 预检查全部通过后,单击“下一步”。
  11. 任务确定。
    1. 检查所有配置项是否正确。

    2. 单击“启动任务”,仔细阅读提示后,勾选“我已阅读启动前须知”。
    3. 单击“启动任务”,完成任务创建。

  12. 任务创建成功。

    任务创建成功后,返回任务列表查看创建的任务状态。

步骤五:迁移后进行数据校验

当任务状态变为“增量同步”,说明全量同步已经完成,全量同步完成后,登录GaussDB查看数据迁移结果。

  1. 等待迁移任务状态变为“增量同步”。

  2. 单击任务名称,进入任务详情页。
  3. 在“同步进度”页签查看全量同步结果。

    如图所示,本次迁移将TEST_INFO库中DATATYPELIST表迁移至shard_0,共迁移了两条数据。

  4. 验证数据一致性。
    1. 在“同步对比 > 对象级对比”页面,查看库和表的迁移结果。

    2. 在“同步对比 > 数据级对比”页面,创建对比任务,查看表中行的迁移结果。

  5. 通过DAS连接GaussDB的目标库“test_database_info ”。

    DAS连接实例的方法请参考新增数据库登录

  6. 执行如下语句,查询全量同步结果。
    SELECT * FROM test_info.datatypelist_after;

    Oracle数据库中的模式迁移完成后,会在GaussDB库中作为Schema,所以查询语句中添加Schema精确查询。

    如图所示,查询表中的各个数据类型都迁移成功,并且数据正确无误。

  7. 验证增量同步。
    由于本次迁移为“全量+增量”同步模式,全量同步完成后,如果在创建任务后有数据写入,这些写入的数据会一直同步至目标库中,直到任务结束。下面我们模拟写入另外的数据。
    1. 根据本地的Oracle数据库的IP和地址,通过数据库连接工具连接数据库。
    2. 执行如下语句,在源库插入一条数据。
      我们插入一条“id”为1的数据。
      insert into test_info.DATATYPELIST values(1,'Migrate-test','test1','test2','test3','test4', 666,12.321,1.123,2.123,sysdate,sysdate,sysdate,sysdate,'hw','cb','df','FF','FF','AAAYEVAAJAAAACrAAA');
      commit;
    3. 在目标库执行如下语句查询结果。
      SELECT * FROM test_info.datatypelist_after;

      如图所示,在源库新增的数据,可以实时同步至目标库。

  8. 结束迁移任务。
    根据业务情况,待业务完全迁移至目标库,可以结束当前任务。
    1. 单击“操作”列的“结束”。

    2. 仔细阅读提示后,单击“是”,结束任务。

  9. 迁移完成后,进行性能测试。

    测试云数据库GaussDB性能的方法请参见性能白皮书

提示

您即将访问非华为云网站,请注意账号财产安全

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容