Dts简介
Dts简介DM 数据迁移工具DM Data Transformation Service简称 DTS。DTS 是提供数据迁移功能及与之相关的辅助功能的工具主要功能有迁移前的评估、迁移、迁移后对比以及异构数据库到 DM 的 SQL 语句转换功能等。迁移路径主要包括主流大型数据库迁移到 DM、DM 迁移到主流大型数据库、DM 到 DM、文件迁移到 DM 以及 DM 迁移到文件等。迁移内容包括数据库中的各类对象和对象中存储的数据具体根据不同迁移配置略有区别。以下是 DTS 提供的主要功能:迁移、对比、评估、转换迁移包括迁移管理迁移配置以及迁移实施。迁移管理是把迁移分成项目和组进行管理可以对迁移进行增删改查迁移配置以向导方式供用户配置迁移信息迁移实施是根据迁移配置生成迁移任务分发执行迁移任务。对比同样包括对比管理对比配置以及对比实施。对比管理是把对比分成项目和组进行管理可以对对比进行增删改查对比配置以向导方式供用户配置对比信息对比实施是根据对比配置生成对比任务分发执行对比任务。评估同样包括评估管理评估配置以及评估实施。评估管理是把评估分成项目合组进行管理可以对评估进行增删改查评估配置以向导方式供用户配置评估信息评估实施是根据评估配置生成评估任务分发执行评估任务。转换包括转换管理转换配置和转换执行。转换管理是指把转换分成项目和组进行管理可以对转换进行增删改查转换配置可以配置转换规则也可以为部分转换规则配置参数转换执行是指执行从源数据源到目的数据源的 SQL 转换操作。为了提供更好的服务DTS 还提供了一系列辅助功能:元数据管理作业调度元数据管理是把迁移/对比/评估/转换配置信息保存到 XML 文件供下次迁移/对比/评估/转换或作业调度使用。作业调度提供基于时间的作业调度来定时执行迁移/对比/评估任务Oracle数据库所有数据导入到达梦数据库1. 环境说明源数据库 Oracle19c目标数据库 DMV82. 迁移工具介绍达梦数据库自带的DTS工具迁移方式分为两种如下①windows系统安装达梦客户端使用【DM数据迁移工具】②linux系统进入达梦安装路径的tool目录执行./dts打开【DTS迁移工具】3. 迁移前准备3.1 创建达梦用户及表空间# 创建表空间[rootufdb165 bin]# ./disqldisql V8username:SYSDBApassword:Server[LOCALHOST:5236]:mode is normal, state is openlogin used time : 2.881(ms)SQL create tablespace cwy_init datafile /u01/dmdbms/data/DAMENG/cwy_init.dbf size 5120 autoextend on next 1024;executed successfullyused time: 78.379(ms). Execute id is 4.# 创建用户并赋权SQL CREATE USER cwy_init IDENTIFIED by init_123456789 DEFAULT TABLESPACE cwy_init;SQL grant dba to cwy_init;3.2 调整达梦数据库参数针对Oracle数据迁移Compatibility使用效果及建议COMPATIBLE_MODE是否兼容其他数据库模式。0不兼容1 兼容 SQL92 标准2部分兼容 ORACLE3 部分兼容 MS SQL SERVER4部分兼容 MYSQL5兼容 DM66部分兼容Teradata。该参数默认为 0所以当从 Oracle移植到DM数据库时,修改值为2。CALC_AS_DECIMAL整数相除是否保留小数位修改为 1ORA_DATE_FMT是否兼容 ORACLE 的 DATE 类型格式。0不兼 容1兼容。该参数默认为0。注仅当 COMPATIBLE_MODE 为 2 时有效修改方式如下ALTER SYSTEM SET COMPATIBLE_MODE2 SPFILE;ALTER SYSTEM SET CALC_AS_DECIMAL1 SPFILE;静态参数修改完成后需要重启数据库后才能生效。# 查看修改后的参数值select para_name,para_value from v$dm_ini where para_name CALC_AS_DECIMAL OR para_name COMPATIBLE_MODE;4. 数据迁移4.1 进入tool目录执行./dts启动迁移工具[rootufdb165 ~]# cd /u01/dmdbms/tool[rootufdb165 tool]# ./dts4.2 新建工程选择【新建工程】按钮在弹出的新建工程页面填写相应的工程名4.3 新建迁移在工程列表的“迁移”标签右键选择新建迁移并输入迁移名称和迁移描述。在选中新建的迁移后可以看到迁移工具的欢迎界面。4.4 选择迁移方式在欢迎界面点击下一步然后选择数据源和目的库选择要迁移的方式4.5 输入Oracle数据库信息进入连接oracle数据库界面输入数据源Oracle 数据库的信息主机名 (IP) 、端口服务名Oracle 默认服务名 ORCL角色默认用户名和口令。此时Oracle要保持开启状态并且Oracle 监听已启动。4.6 输入DM数据库信息进入连接DM数据库界面输入目的数据库DM数据库的信息主机名 (IP) 、端口DM 默认端口 5236用户名和口令要确保DM数据库保持开启状态。4.7 选择源模式和目的模式找到你要迁移的Oracle数据库中那个用户下的数据再选择要导入的达梦数据库用户然后点击【下一步】迁移的对象包括模式及模式对象、目录、公共同义词、上下文等根据不同数据源支持迁移不同的对象。模式及模式对象包括模式、表、视图、物化视图、序列、存储过程/函数、包、类、同义词以及自定义类型根据数据源不同支持的模式及模式对象也不同。4.8 选择迁移对象此处选择要迁移的具体表格、视图、存储过程等可根据名称具体选择。4.9 审阅迁移任务本步骤只做演示记录为节省迁移时间选择5个表作为迁移。4.10 完成迁移迁移过程中如果存在报错请导出错误日志进行分析判断是否对业务环境有造成不良影响。MySQL数据库里的所有数据即所有表迁移到达梦数据库里步骤一、新建工程步骤二、新建迁移右键点击项目下的 迁移 节点 → 选择 新建迁移任务步骤三、选择方式在向导里选择迁移方式步骤四、源数据库输入Mysql数据库信息注意数据库名把默认改为你需要迁移的数据库名比如test数据库而不是默认的 mysql 系统库。点击刷新在后续步骤才能通过勾选源模式获取该数据库所有表。目标数据库输入达梦数据库信息步骤五、迁移数据模式要把 MySQL 里的哪个库比如 test作为迁移的源。模式对象这个库里的哪些具体对象比如所有表、视图、存储过程需要迁移。1核心选项用一条或多条查询指定要迁移的数据这个选项适合只迁移部分数据比如用 WHERE 条件筛选不是全表迁移。从数据源复制对象这个选项是直接复制整个表结构和数据把 test 的所有表完整迁移。2表格区域这是选择具体要迁移的数据库对象的地方源模式这里对应你的 MySQL 数据库 test。目的模式对应达梦数据库里要接收数据的目标模式可以是已存在的也可以新建。创建模式勾选后会在达梦自动创建和源模式同名的模式库。表 / 视图勾选后会把源库中所有的表 / 视图都迁移过去。3右上角选项应用当前策略到其他对象这个选项是当你同时迁移多个源模式时把当前这一行的配置比如目标模式、大小写转换批量应用到其他所有行。现在只迁移一个模式所以暂时用不上。保持对象名大小写K未勾选工具会自动把 MySQL 里的小写表名 / 字段名比如 a_authority、group_id转换为达梦里的大写A_AUTHORITY、GROUP_ID完美解决大小写不匹配的问题。如果勾选会保留原有的小写名称导致后续外键 / 约束报错。4勾选表与视图把 MySQL 源数据库里的表和视图这两种对象完整地复制到达梦数据库里。5编辑目的模式双击 “目的模式” 列下显示 SYSDBA 的单元格进入编辑状态。直接输入TEST达梦默认大写和你的 MySQL 库名如test保持一致。勾选 “创建模式” 这一列的复选框工具会在迁移时自动创建 TEST 这个模式无需手动提前创建如果提前已在DM管理工具里创建了TEST直接在下拉框里选择即可。输入完成后按 Enter 键确认然后点击「下一步 (N)」继续迁移流程。6保持对象小写可选如果需要目标数据库的表名与列名保持小写MySQL数据库的表名与列名都是小写①勾选保持对象大小写②目的模式的名称小写否则下一步你会发现目的模式对应数据库名称还是大写以及全选出现目的对象对应数据库表也是大写需要注意注意如果需要目标数据库的表名与列名保持小写MySQL数据库的表名与列名都是小写在这里目的模式不能大写TEST而是需要小写步骤六、迁移对象点击左下角的「选择 (S)」按钮会一次性全部勾选上。步骤七、进行迁移点击完成进行迁移。DM管理工具里右键模式刷新即有该数据库了。达梦社区地址https://eco.dameng.com