【云小课】【第58课】如何通过DRS实现Oracle到DDM的数据同步

举报
数据库的小云妹 发表于 2023/06/19 10:20:16 2023/06/19
【摘要】 数据复制服务(DRS)是一种易用、稳定、高效、用于数据同步的云服务,本节小课为您介绍,如何通过DRS将Oracle的数据同步到DDM。使用场景DRS实时同步功能一般用于建立数据同步通道,解决数据共享问题,也可以用于数据流式集成,具有数据转换能力。本实践中的选择均为测试简化基本操作,仅做参考,实际情况请用户按业务场景选择,更多关于DRS的使用场景请单击这里了解。部署架构本示例中,DRS源数据库...

云小课必用.jpg

数据复制服务(DRS)是一种易用、稳定、高效、用于数据同步的云服务,本节小课为您介绍,如何通过DRS将Oracle的数据同步到DDM。

使用场景

DRS实时同步功能一般用于建立数据同步通道,解决数据共享问题,也可以用于数据流式集成,具有数据转换能力。本实践中的选择均为测试简化基本操作,仅做参考,实际情况请用户按业务场景选择,更多关于DRS的使用场景请单击这里了解。

部署架构

本示例中,DRS源数据库为本地自建Oracle数据库,目标端为华为云上的分布式数据库中间件DDM,通过公网网络,将源端的数据同步到目标端,部署架构可参考下图。

1.png

更多关于DRS的使用场景请单击这里了解。

源端Oracle准备

同步前需要在源库构造一些数据类型,供同步完成后验证数据。

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

1. 根据本地的Oracle数据库的IP地址,通过数据库连接工具连接数据库。

2. 根据支持的数据类型,在源库执行语句构造数据。

3. 创建一个测试用的用户。

create user test_info identified by xxx;

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

4. 给用户赋权。

grant dba to test_info;

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

CREATE TABLE test_info.table3(
ID INT,
COL01 CHAR(100),
COL02 NCHAR(100),
PRIMARY KEY(ID)
);

6. 插入两行数据。

insert into test_info.table3 values(4,'huawei','xian');
insert into test_info.table3 values(2,'DRS-test','test1');
insert into test_info.table3 values(1,'huawei','xian');

7. 使语句生效。

commit;

目标端DDM准备

一、创建DDM实例

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。

4. 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。

5. 按需设置实例相关信息和规格。

2.png

6. 选择实例所属的VPC和安全组、配置数据库端口。

3.png

7. 实例信息设置完成后,单击页面下方“立即购买”。

8. 实例创建成功后,用户可以在“实例管理”页面对其进行查看和管理。

数据库端口默认为5066,实例创建成功后可修改。当实例运行状态为“运行中”时,表示实例创建完成。

二、创建RDS for MySQL实例

本章节介绍创建DDM下关联的RDS for MySQL实例,创建步骤如下。

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 云数据库 RDS”。

4. 单击“购买数据库实例”。

5. 配置实例名称和实例基本信息。

4.png

6. 选择实例规格。

7. 选择实例所属的VPC和安全组、配置数据库端口。


注意:

RDS for MySQL实例的虚拟私有云(VPC)和子网必须和DDM实例保持一致。


5.png

8. 配置实例密码。

9. 单击“立即购买”。

10. 返回云数据库实例列表。

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

三、创建逻辑库并关联RDS for MySQL实例

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。

4. 在实例管理页面,单击实例对应操作栏的“创建逻辑库”。

5. 在创建逻辑库页面,选择“逻辑库模式”、“逻辑库总分片数”,填写“逻辑库名称”,并选择要关联的DDM帐号、要关联的实例,单击“下一步”。

本示例中逻辑库模式为单库,逻辑库名称为db_test。


注意:

DRS目前仅支持同步源端Oracle的数据到目标DDM,不支持同步源库表结构及其他数据库对象,用户需要在目标库根据源端数据库的表结构创建对应的逻辑库。


6.png

四、创建DDM账号

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。

4. 在实例管理页面,单击实例实例名称,进入实例基本信息页面。

5. 在左侧导航栏选择“帐号管理”,进入帐号管理页面。

6. 在帐号管理页面单击“创建DDM帐号”,在弹窗中填选帐号信息、关联的逻辑库和权限。

DDM目标库账号所需要的权限可参考DRS使用须知中的数据库权限说明。

7.png

7. 信息填写完成,单击“确定”即可创建成功。

五、创建目标库表结构

DRS目前仅支持同步源端Oracle的数据到目标DDM,不支持同步源库表结构及其他数据库对象。用户需要在目标库根据源端逻辑库的表结构,自行在目标库创建对应的表结构及索引。更对约束限制可参考DRS使用须知

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。

4. 在弹出的对话框中输入创建DDM账号中的实例用户名和密码,单击“测试连接”检查。

5. 连接成功后单击“登录”,登录DDM实例。

6. 单击创建逻辑库并关联RDS for MySQL实例中创建的逻辑库db_test。

7. 在db_test库中执行如下语句,创建与源端结构一致的同名目标表table3。

CREATE TABLE `db_test`.`table3`( 
ID INT, 
COL01 CHAR(100), 
COL02 NCHAR(100), 
PRIMARY KEY(ID));

创建DRS同步任务

本章节介绍如何创建DRS同步任务,将本地自建Oracle上的数据库同步到华为云DDM。

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

本示例为同步到DDM入云同步,您可以参考DRS使用须知获取相关信息。

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 数据复制服务 DRS”。

4. 单击“创建同步任务”。

5. 填写同步任务参数:

    a、配置同步任务名称。

    8.png

    b、填写同步任务信息并选择目标库。

    这里的目标库选择创建DDM实例所创建的DDM实例。

    9.png

6. 单击“开始创建”。同步实例创建中,大约需要5-10分钟。

7. 配置源库信息和目标库数据库密码。

    c、配置源库信息,单击“测试连接”。当界面显示“测试成功”时表示连接成功。

    10.png

    d、配置目标库信息,单击“测试连接”。当界面显示“测试成功”时表示连接成功。

    11.png

8. 单击“下一步”。

9. 在“设置同步”页面,选择同步对象。

  • 流速模式:不限速。
  • 同步对象:表级同步

    在源库选择需要同步的数据库和表。本次实践中选择“test_info”中的“table3”表,设置同步到目标“db_test”中的“table3”中。

        12.png

10. 单击“下一步”,在“预检查”页面,进行同步任务预校验,校验是否可进行同步。

  • 查看检查结果,如有不通过的检查项,需要修复不通过项后,单击“重新校验”按钮重新进行同步任务预校验。
  • 预检查完成后,且所有检查项结果均成功时,单击“下一步”.

11. 单击“提交任务”。

返回DRS实时同步管理,查看任务状态。

启动中状态一般需要几分钟,请耐心等待。

13.png

当状态变更为“全量中”,表示同步任务已经启动。


说明:

  • 目前Oracle到DDM同步支持全量、全量+增量两种模式。
  • 如果创建的任务为全量同步,任务启动后先进行全量数据同步,数据同步完成后任务自动结束。
  • 如果创建的任务为全量+增量同步,任务启动后先进入全量同步,全量数据同步完成后进入增量同步状态。
  • 增量同步会持续性同步增量数据,不会自动结束。

确认同步执行结果

确认同步结果可参考如下两种方式:

1. DRS会针对同步对象、数据等维度进行对比,从而给出同步结果,详情参见在DRS管理控制台查看同步结果。

2. 直接登录数据库查看库、表、数据是否同步完成。手工确认数据同步情况,详情参见在DDM管理控制台查看同步结果。

在DRS管理控制台查看同步结果

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 数据复制服务 DRS”。

4. 单击DRS实例名称。

5. 单击“同步对比”。

6. 选择“对象级对比”页签,查看对象是否缺失。

单击“开始对比”,对比完成后,查看对比结果。

14.png

7. 选择“数据级对比”页签,查看同步对象行数是否一致。

a、单击“创建对比任务”。

b、在弹出的对话框中选择对比类型、时间和对象。

c、等待对比任务结束后,查看数据对比结果。

d、如需查看对比明细,可单击对比任务后的“查看对比报表”。

在DDM管理控制台查看同步结果

1. 登录华为云控制台

2. 单击管理控制台左上角的图标,选择区域。

3. 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”。

4. 选择DDM实例,单击同步的目标实例的操作列的“登录”。

5. 在弹出的对话框中输入密码,单击“测试连接”检查。

6. 连接成功后单击“登录”。

7. 查看并确认目标库名和表名等,确认相关数据是否同步完成。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。