Oracle、DB2 迁移至 MYSQL、PG 的 表的限制、数据类型映射关系,如何处理?

在 Oracle、DB2 到 MySQL的迁移过程中,大家主要关注应用层面的兼容问题。
但是,数据类型的映射转换如何处理呢?

我就拿简单的字符串数据类型举个例子吧:
Oracle、DB2 与 MySQL,同样的 utf-8 编码格式,同样的表定义,都包含一个 数据类型 char(10) 的字段。
我要将 “一二三四五上山打老虎” 这个字符串 insert 到这个字段,猜猜会发生什么?
您肯定会说  “一二三四五上山打老虎” 占了 30 byte ,肯定报错的。
但人家 MySQL的 char(10) 就是把这个含着“老虎”的字符串给“吃”了,  而只有 Oracle、DB2 抛出了类似 “ value is too long ”的错误。
为什么呢?因为 Oracle、DB2的 char(10) 最多只能接收 10 字节的字符串长度,而 MySQL 人家的 char(10) 的含义是可以存储 10个字符。
看到了吧,其实数据类型的不同之处,还是很值得大家关注的。

MySQL5.7 内置数据类型

DB2 10.1 内置数据类型

                                     

参与15

3同行回答

庆功庆功  联合创始人 , 六卫科技
@ThinkJ其实相对于DSG来说,我反而觉得HVR在数据同步复制PTsql 到Mysql更加合适。我说几个数据供参考:hvr单个hub支持200条复制链路,每天10TB以上的增量数据复制;数据实时进入kafka支持每秒最低10万条消集成进Kafka;数据实时进入Greenplum支持每秒最低40万条数据导入;...显示全部

@ThinkJ其实相对于DSG来说,我反而觉得HVR在数据同步复制PTsql 到Mysql更加合适。我说几个数据供参考:

hvr单个hub支持200条复制链路,每天10TB以上的增量数据复制;

数据实时进入kafka支持每秒最低10万条消集成进Kafka;

数据实时进入Greenplum支持每秒最低40万条数据导入;

收起
IT咨询服务 · 2021-05-20
浏览1871
ThinkJThinkJ  技术经理 , 信泰人寿保险股份有限公司
DSG的同步工具也能做类型的映射和转换,效果也还不错显示全部

DSG的同步工具也能做类型的映射和转换,效果也还不错

收起
保险 · 2020-08-14
浏览4701
匿名用户匿名用户
两种办法:1.使用工具做转换。譬如:Oracle -> MySQL 的工具: ora2mysql; Oracle->PG: ora2pg2.对照表梳理出来手工做。Oracle->MySQL的对照表:Oralce->PG的对照表:varchar2 -> varcharnumber -> numericsysdate -> now()clob -> text/BYTEABLOB...显示全部

两种办法:
1.使用工具做转换。譬如:Oracle -> MySQL 的工具: ora2mysql; Oracle->PG: ora2pg
2.对照表梳理出来手工做。

Oracle->MySQL的对照表:

Oralce->PG的对照表:

varchar2 -> varchar
number -> numeric
sysdate -> now()
clob -> text/BYTEA
BLOB -> BYTEA

收起
互联网服务 · 2020-08-14
浏览4931

提问者

atpeace331
数据库管理员银行

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-08-14
  • 关注会员:6 人
  • 问题浏览:6975
  • 最近回答:2021-05-20
  • X社区推广