常用关系型数据库(RDBMS)之间数据迁移解决方案

8 篇文章 0 订阅
6 篇文章 0 订阅

一、mysql到dm数据库迁移方案:

将mysql的表结构先整合到oracle数据库中,再将oracle中表结构整合到dm中,最后通过Kettle配置作业将mysql中数据抽取到dm数据库中去;

二、mysql到dm数据库迁移过程:

1、表结构迁移:

(1)通过esf_dbcv_pro.msi软件将mysql中表结构整合到oracle数据库中;

(2)通过pl/Sql工具将oracle中对应用户下的表结构导出sql文件;

(3)修改导出的sql文件,只留下创建表、创建索引、字段中文注解、创建自增这几种sql,其余用户等内容该用空格替换就替换,外键等内容该删除就删除;

(4)对于sql中表名或字段名是dm数据库系统保留字的,需要用双引号引起来,如果不知道哪些是系统保留字段的,可以将3步骤中修改后的sql在dm中运行,如果有系统保留字段,就会提示语法错误,对该表名或字段添加双引号,再次运行便可以正确运行;

(5)由于oracle对表名和字段名有长度要求,可能会使mysql中表名和字段名过长的截断一部分,在数据迁移过程中会发现的,如果发现,进行手动修改即可;

(6)然后将修改的sql在dm数据库中对应的模式下进行运行,就能够创建好表结构;

(7)从mysql通过软件工具导入到oracle过程中,mysql中的datetime字段类型到oracle会变成date类型,因此需要对通过pl/Sql工具导出oracle中sql文件中的部分date字段类型进行手动修改;

2、数据迁移:

通过配置好的Kettle可以指定某些表进行数据的迁移,对于数据量小的表,可以进行多表批量迁移数据,对于数据量很大的表,建议一次一张表进行数据迁移;

3、Dm数据库创建要点:

(1)string case sensitive:要选择n,大小写不敏感;

(2)length in char:要选择y,用字符串进行存储,保证Mysql中长度能存储下的数据在dm中同样能够存储下;

(3)如果字段名或表名为系统保留字段,那么写sql时该字段名或表名要添加双引号;

关系型数据库之间整库表结构和数据迁移工具:

https://download.csdn.net/download/lsy_csdn_/11172282

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值