DM数据迁移工具提供了主流大型数据库迁移到DM、DM迁移到主流大型数据库、DM到DM、文件迁移到DM以及DM迁移到文件的功能。
DM数据迁移工具支持:
◆ 主流大型数据库Oracle、SQLServer、MySQL、DB2、PostgreSQL、Informix、Kingbase、Sybase的模式、表、视图、序列、索引迁移到DM;
◆ ODBC数据源、JDBC数据源的模式、表、视图迁移到DM;
◆ DM数据库的模式、表、视图、序列、索引迁移到主流大型数据库Oracle、SQLServer、MySQL;
◆ DM数据库之间模式、表、序列、视图、存储过程/函数、包、类、同义词、触发器、对象权限的迁移;
◆ DM数据库模式、表、序列、视图、存储过程/函数、包、类、同义词、触发器、对象权限迁移到XML文件;
◆ DM数据库模式、表、序列、视图、存储过程/函数、包、类、同义词、触发器、对象权限迁移到SQL脚本文件;
◆ DM数据库的表、视图数据迁移到文本文件;
◆ DM数据库的表、视图数据迁移到Excel文件;
◆ DM数据库的表、视图数据迁移到Word文件;
◆ SQL脚本文件迁移到DM数据库;
◆ XML文件迁移到DM数据库;
◆ 指定格式的文本文件、Word文件和Excel文件迁移到DM数据库。
本文介绍达梦DTS的使用和从Oracle到达梦的迁移及常见问题分享。
准备工作:
1、搭建MySql环境,填充数据
2、部署达梦数据库,字符集参数注意和Mysql一致,大小写建议不敏感
开始迁移:
1、打开DTS后新建工程
2、新建迁移
3、选择迁移类型,MySQL到DM
4、输入源端信息
5、输入目标端信息
6、在达梦上创建相应的用户和表空间,MySQL 的体系架构是单实例多库,达梦的体系架构是单库多实例,从 MySQL 迁移到达梦的时候就需要针对 MySQL 中的每一个库在达梦里面创建一个用户和表空间来对应,Mysql一个库相当于达梦一个模式
7、选择迁移到新建的模式
8、选择迁移对象
9、审阅迁移任务
迁移错误处理
10、查看失败的迁移,对其进行处理,DM 和 MySQL 体系结构上存在差异,SQL 语法也存在一定的差异,DM 针 对 MySQL 做了部分兼容性,但由于有根本性的差异,还需要一定的人工干预
这里的报的错都是违反表唯一性约束,这种情况是因为表中设置了唯一性约束或者主键约束,但是数据中有重复记录,还有可能是原始库的约束被禁用了,或者数据重复迁移造成的
在确定源数据没有问题的情况下,迁移的时候选择删除后再拷贝,如下图所示:
在迁移界面中,选中要迁移的表,然后点击【转换】
然后可以看到刚才的出错迁移成功了,
11、这里我还遇到的一个错误是:/* 错误消息: 对象[CREATEDATE]DEFAULT约束表达式无效*/
这是因为在 MySQL 中时间类型 TIMESTAMP 默认 default 设置为“0000-00-00 00:00:00”,而 在 DM 中 TIMESTAMP 类型数据不能为“0000-00-0000:00:00”,在 DM 中是不合法的,必须在 ‘0001-01-01 00:00:00.000000’ 到 ‘9999-12-31 23:59:59.999999’之间