通过DTS将RDS的数据实时同步至DataHub

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

准备工作

  • 创建一个数据库和表,您可以选择使用阿里云的RDS数据库,也可以在本地服务器上自建数据库。本案例以华东1区的RDS MySQL数据库为例,数据库表的名称为datav_test,字段及数据如下图所示。

  • 登录阿里云Datahub控制台,选择华东1,单击创建Project,创建一个Datahub项目(本案例的项目名称为dts_test)。

数据同步

  1. 进入阿里云DTS控制台,单击左侧菜单栏中的数据同步
  2. 单击创建同步作业,购买数据传输服务实例,配置如下图所示。

注意

 - **源实例**选择**MySQL**,**目标实例**选择**Datahub**。
 - 源实例区域和目标实例区域以及同步作业实例区域需保持一致。
  1. 购买成功后,返回控制台,单击实例右侧的配置同步链路
  2. 选择同步通道的源及目标实例,如下图所示,完成后单击授权白名单并进入下一步

  1. 选择同步对象。选择需要同步的表,单击 > 图标按钮。

  1. 单击预检查并启动,启动预检查。如果预检查成功,系统会显示如下对话框。

  1. 单击关闭,返回数据同步页面,单击页面右上角的刷新,查看实例状态。此时正常情况下,实例状态应该显示为初始化中

说明:初始化的时间依赖于同步表的数量大小。

  1. 当初始化完成后,同步链路即进入同步中的状态,此时源跟目标实例的同步链路才真正建立完成。单击页面右上角的刷新,查看实例的同步概况。

  1. 进入阿里云Datahub控制台,单击项目右侧的查看,进入Topic页面,可以看到已经同步完成的表的名称即为topic的名称。

  1. 单击topic右侧的查看,选择Schema,查看已经同步完成的表的结构。

数据采集

说明:由于Datahub同步的是增量数据,因此您必须在数据库中增加一条或多条数据,才能同步到Datahub中。此案例采用手动插入数据的方式,仅作为参考,在实际应用中,您表中的数据应该是实时写入的。

  1. 登录您的数据库,在表中插入一条数据,如下图所示。

  1. 回到阿里云Datahub控制台,单击topic右侧的查看,选择Shards
  2. 单击某个shard右侧的数据抽样
  3. Shard数据抽样页面,指定一个时间(该时间要小于等于最新数据时间,否则无法抽取数据),单击抽样,查看数据同步结果。

常见问题

  1. DTS 数据同步失败,如何处理?

可能原因:同步链路规格配置不合适导致。

解决方法:参考数据同步规格说明,选择合适的规格,重新创建同步作业。

  1. Datahub 中单击数据抽样,抽样数据为空,如何处理?

可能原因:

  • 指定的时间大于最新数据时间
  • 数据库中不存在增量数据。

解决方法:

  1. 在进行数据抽样时,设置指定的时间小于等于最新数据时间,再次单击抽样,查看数据是否为空。

    • 是,执行下一步。
    • 否,问题解决。
  2. 在您的数据库中插入一条或多条数据,重新回到Datahub控制台,对数据进行抽样。

    如果问题仍然无法解决,请在控制台上提交工单,或者直接联系阿里云技术支持工程师。
    

(本文作者为阿里云大数据产品文档工程师)

相关文章
|
10天前
|
存储 Oracle 关系型数据库
【赵渝强老师】MySQL InnoDB的数据文件与重做日志文件
本文介绍了MySQL InnoDB存储引擎中的数据文件和重做日志文件。数据文件包括`.ibd`和`ibdata`文件,用于存放InnoDB数据和索引。重做日志文件(redo log)确保数据的可靠性和事务的持久性,其大小和路径可由相关参数配置。文章还提供了视频讲解和示例代码。
118 11
【赵渝强老师】MySQL InnoDB的数据文件与重做日志文件
|
10天前
|
缓存 NoSQL 关系型数据库
Redis和Mysql如何保证数据⼀致?
在项目中,为了解决Redis与Mysql的数据一致性问题,我们采用了多种策略:对于低一致性要求的数据,不做特别处理;时效性数据通过设置缓存过期时间来减少不一致风险;高一致性但时效性要求不高的数据,利用MQ异步同步确保最终一致性;而对一致性和时效性都有高要求的数据,则采用分布式事务(如Seata TCC模式)来保障。
44 14
|
13天前
|
SQL 前端开发 关系型数据库
SpringBoot使用mysql查询昨天、今天、过去一周、过去半年、过去一年数据
SpringBoot使用mysql查询昨天、今天、过去一周、过去半年、过去一年数据
44 9
|
21天前
|
SQL 关系型数据库 MySQL
定时任务频繁插入数据导致锁表问题 -> 查询mysql进程
定时任务频繁插入数据导致锁表问题 -> 查询mysql进程
40 1
|
22天前
|
SQL 关系型数据库 MySQL
mysql数据误删后的数据回滚
【11月更文挑战第1天】本文介绍了四种恢复误删数据的方法:1. 使用事务回滚,通过 `pymysql` 库在 Python 中实现;2. 使用备份恢复,通过 `mysqldump` 命令备份和恢复数据;3. 使用二进制日志恢复,通过 `mysqlbinlog` 工具恢复特定位置的事件;4. 使用延迟复制从副本恢复,通过停止和重启从库复制来恢复数据。每种方法都有详细的步骤和示例代码。
|
9天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
24 1
|
11天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
27 4
|
1月前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
61 3
Mysql(4)—数据库索引
|
18天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
86 1
|
20天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
61 2

热门文章

最新文章