Oracle 到达梦实操教程:用 DataMover 一步一步跑通全量迁移
这篇教程面向已经明确要做 Oracle 到达梦迁移的实施人员,直接演示如何用 DataMover 配置源端、目标端、普通任务、字段映射和执行监控,并完成最基本的行数与时间范围校验。适合先做 2 到 3 张典型表试迁,再逐步放大到正式环境。
这篇教程会带你完成什么
- 把 Oracle 源端接入到 DataMover
- 把达梦目标端接入到 DataMover
- 创建一个 Oracle 到达梦的普通任务
- 选择典型表,检查字段映射并启动全量迁移
- 在执行监控里看任务结果,并做基本 SQL 校验
开始前准备
在正式操作前,先确认这些最小前提:
- 已有可访问的 Oracle 源库和达梦目标库
- 已部署好 DataMover,或者至少能登录到管理界面
- Oracle 账号具备读取业务表和元数据的权限
- 达梦账号具备建表或写入目标表的权限
- 本次先做全量迁移试跑,不先上 CDC
建议先只选 2 到 3 张典型表,不要一开始就把全部业务表放进去。优先选:
- 带序列主键的表
- 时间字段较多的表
- 金额精度敏感表
第一步:部署或登录 DataMover
如果当前环境还没有 DataMover,可以先准备一套测试环境。最快的方式是用 Docker 部署,安装包和文档入口如下:
如果环境已经准备好,直接访问 DataMover 管理界面,登录后会看到:
- 数据源管理
- 任务管理
- 节点管理
这篇教程的操作主要在“数据源管理”和“任务管理”里完成。
第二步:配置 Oracle 源端数据源
页面入口:
数据源管理 -> 新增数据源
在新增表单里完成下面几项:
- 数据源类型选择
Oracle - 填写连接地址、端口、库信息、用户名、密码
- 数据源角色选择“源端”或“源端和目的端”
这一页最重要的不是一次填全,而是先保证“测试连接”通过。
建议重点检查:
- 连接地址和端口是否正确
- 当前账号是否能读取目标业务 schema 下的表
- 是否使用了具备元数据读取能力的账号
测试连接通过后再保存。
如果这里都连不上,后面的任务创建不要继续。

补图说明:建议截图内容包括 Oracle 类型选择、连接参数区、测试连接按钮、测试成功提示。
第三步:配置达梦目标端数据源
页面入口同样是:
数据源管理 -> 新增数据源
这次数据源类型选择 达梦(DM),然后填写:
- 目标端连接地址
- 端口
- 数据库或 schema 对应账号
- 用户名和密码
- 数据源角色选择“目的端”或“源端和目的端”
这一步要额外确认两件事:
- 目标 schema 是否已经准备好
- 这次试迁是让 DataMover 自动建表,还是目标表已经由 DBA 预先准备
如果目标库里已经有历史表,不要先急着跑任务,要先确定后面是写已有表、写新表,还是只做结构验证。

补图说明:建议截图内容包括达梦数据源配置、角色选择、连接测试结果。
第四步:创建 Oracle 到达梦普通任务
页面入口:
任务管理 -> 新建任务
在新建任务页面依次完成:
填任务名称
建议任务名称直接带源库、目标库和用途,例如:oracle_to_dm_demo选择任务类型
这篇教程先选普通任务,不选实时任务选择源端数据源
选刚才配置好的 Oracle 数据源选择目标端数据源
选刚才配置好的达梦数据源
保存后进入下一步,进入表映射和选表页面。

补图说明:建议截图内容包括普通任务选择、Oracle 源端选择、达梦目标端选择。
第五步:选择试迁表
页面进入表映射后,先不要把所有表都选上。更适合先选 2 到 3 张典型表,例如:
- 一张带主键和序列的订单表
- 一张带创建时间、更新时间的业务表
- 一张金额或数量字段较多的表
这么做的目的不是省事,而是先把兼容问题集中暴露出来。如果这几类表能跑通,再扩到更多表会稳很多。
选表后,DataMover 会为每张源表生成对应的同步任务,并为目标端准备目标表和默认字段映射。

补图说明:建议截图内容包括源端表树、已选试迁表、目标端 Tab。
第六步:检查字段映射和目标表
这是整篇教程最关键的一步。
页面入口:
表映射页 -> 目标端 Tab -> 字段映射
这里至少要看下面这些内容:
| 字段/对象 | 在页面里看哪里 | 要确认什么 |
|---|---|---|
NUMBER(p,s) 字段 | 字段映射列表里的目标字段类型 | 金额、费率、编码类字段的精度和长度是否合理 |
DATE 字段 | 字段映射列表 | 业务是否把它当成“带时间”的字段使用 |
TIMESTAMP 字段 | 字段映射列表 | 精度和排序逻辑是否需要单独校验 |
| 主键字段 | 目标字段属性 | 主键是否正确映射,目标表是否还保留主键逻辑 |
| 序列相关表 | 目标表和主键字段 | 迁移后是否还需要校准序列 |
如果目标表不存在,DataMover 会基于源表结构生成目标表配置。
如果目标端已存在同名表,DataMover 不会默认直接覆盖同名表,这一点要提前看清楚,避免误以为会直接写到业务正式表。
对于 Oracle 到达梦试迁,建议在这一步重点检查:
- 数值精度
- 时间字段
- 默认值
- 非空约束
- 主键映射

补图说明:建议截图内容包括字段映射连线、目标字段类型、主键标记、目标表名称。
第七步:配置同步模式
这篇教程先跑 全量迁移,所以选择普通任务里的全量模式即可。
页面入口:
同步策略配置
这一步建议这样处理:
- 抽取方式选择
全量 - 数据批大小先使用默认值
- 暂时不要在第一轮试迁里同时调大批大小和分片参数
为什么不建议一开始就调很多参数:
- 先跑通一轮更重要
- 如果第一轮就同时改分片、批大小、目标表策略,后面很难判断问题到底出在哪
只有当单表数据量明显很大、而且已经确认字段类型和目标表没问题时,再考虑分片字段和更大的批量参数。

补图说明:建议截图内容包括全量模式、批大小、清空目标表选项或相关配置区。
第八步:启动任务并看执行监控
页面入口有两个:
任务管理列表 -> 启动任务详情页 -> 启动单表任务 / 全部启动
启动时会选择执行器节点。
如果当前只有一个可用 Worker,直接选择在线节点即可。
任务启动后,重点看这些信息:
- 每张表的运行状态
- 采集行数和输出行数
- 是否有失败任务
- 目标表名
- 开始时间和结束时间
如果任务失败,不要只看一个“失败”状态,要立刻做两件事:
- 进入任务详情页看失败任务是哪张表
- 下载日志,看是字段映射问题、类型问题,还是目标端写入失败
这一步不要只盯“任务是否完成”,更要看输入输出数量和失败表。

补图说明:建议截图内容包括任务状态、采集行数、输出行数、失败状态、日志入口。
第九步:做 SQL 校验
跑完后至少做下面三类校验。
1. 行数校验
SELECT COUNT(*) FROM source_table;
SELECT COUNT(*) FROM target_table;
2. 时间范围校验
SELECT MIN(update_time), MAX(update_time) FROM source_table;
SELECT MIN(update_time), MAX(update_time) FROM target_table;
3. 抽样校验
SELECT * FROM source_table WHERE id IN (1, 100, 1000);
SELECT * FROM target_table WHERE id IN (1, 100, 1000);
如果是金额敏感表,再补一组聚合校验:
SELECT status, COUNT(*) AS cnt, SUM(amount) AS total_amount
FROM source_table
GROUP BY status
ORDER BY status;
这一步的目标不是证明“任务跑过了”,而是证明“迁移结果可以被业务接受”。
跑这篇教程最常见的 3 个问题
问题 1:数据源能保存,但任务执行时报表不存在
可能原因:
- schema 归属不对
- 表名或字段名大小写策略不一致
处理步骤:
- 回到数据源和选表阶段,确认实际业务表所在 schema
- 固定命名规则后再重新试迁
问题 2:全量任务完成了,但切换后新数据写不进去
可能原因:
- 主键或序列没有校准
处理步骤:
- 查目标表当前最大主键
- 核对达梦侧主键生成逻辑或序列值
问题 3:行数一致,但金额或时间字段对不上
可能原因:
- 数值精度、时间类型或默认值处理不一致
处理步骤:
- 不只看
COUNT(*) - 增加时间范围、聚合和抽样校验
- 回到字段映射页重点核对数值和时间字段
跑通之后,下一步做什么
如果这轮试迁已经跑通,下一步不要立刻全量铺开,建议按这个顺序继续:
- 扩到更多业务表
- 对核心表补更细的聚合和抽样校验
- 如果切换前还要追平变化,再评估增量字段同步或实时同步
- 正式上线前,再配合检查清单做一次切换彩排
可以继续配合这些内容一起看:
- 下载页:https://datamover.cn/download.html
- 文档页:https://datamover.cn/doc/
- 相关文章:
Oracle 到达梦数据库迁移同步方案 - 相关文章:
数据库同步全量、增量字段、CDC 怎么选
相关同步方案
除了Oracle到达梦数据库实操教程,DataMover还支持以下场景:
常见问题解答
Oracle到达梦实操需要哪些前置步骤?
先确认Oracle端Archive Log已开启,达梦端创建好目标库和用户。Docker部署DataMover后,依次配置Oracle源端和达梦目标端,选择表并检查字段映射。
Oracle到达梦的数据类型映射准确吗?
DataMover内置Oracle到达梦的DDL转换引擎,自动处理NUMBER→NUMERIC、VARCHAR2→VARCHAR等常见映射。但建议在同步前逐表确认字段类型。
开始配置 DataMover 同步任务
下载 DataMover 后,可按文档完成数据源、表映射、同步策略、任务启动和执行结果校验。