任重道远迁移路之Oracle到DB2_DB2_数据库_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 数据库 > DB2 > 任重道远迁移路之Oracle到DB2

任重道远迁移路之Oracle到DB2

 2013/8/9 17:20:20    程序员俱乐部  我要评论(0)
  • 摘要:迁移环境配置:数据源:BNET开发环境数据服务器:SunOSv8805.8数据库:Oracle9.2.0.4&DB28.2迁移工具:IBMDB2MigrationToolkit1.3一.表迁移1.索引长度的限制在DB2中单个索引的所对应的字段最大长度限制为1024个字符表名:T_BIZPROC_INST_PARAM、T_BIZPROC_INST_ACTIVITY_PARAM解决方法:(1)如是组合索引,对不同的字段新建不同索引(2)修改字段类型长度2
  • 标签:ORA 任重道远 迁移 Oracle

迁移环境配置:

数据源: BNET开发环境数据

服务器: SunOS v880 5.8

数据库: Oracle 9.2.0.4 & DB2 8.2

迁移工具:IBM DB2 Migration Toolkit 1.3

一. 表迁移

1. 索引长度的限制

在DB2中单个索引的所对应的字段最大长度限制为1024个字符

表名:T_BIZPROC_INST_PARAM、T_BIZPROC_INST_ACTIVITY_PARAM

解决方法

(1)如是组合索引,对不同的字段新建不同索引

(2)修改字段类型长度

2. 表字段类型

无法转换NVARCHAR2字段类型

表名:T_IBSS_REL_TEST

解决方法:修改为varchar字段类型

3. 表的大小长度限制

表的大小超过数据库页面大小4K

解决方法:新建合适的页面(8K)的表空间

4. 唯一索引与主键字段重复

DB2不允许唯一索引的字段与主键字段重复

表名:T_NODE

解决方法:删除唯一索引

5. 大字段(BLOB,LONG)的迁移

解决方法:

(1)DB2迁移工具

(2)单独写INSERT脚本迁移数据

二. 同义词迁移

1.解决方法:单独写脚本 如:create alias alias_name for table_name

三. 序列迁移

1.在DB2中序列可以有两种形式:

(1)同ORACLE数据库一样是单独存在

(2)同SYBASE数据库类似是可以在表字段中定义

2.解决方法:由于ORACLE的序列的上限设置的比较大,因此如果通过DB2的转换工具来迁移ORACLE的序列生成的最大长度类型会出现错误。 需要手动的把DECIMAL(27,0) 字段类型替换为长度为18的 bigint 字段类型

四. 存储过程迁移

1. 动态SQL语句语法不同

注:现在BNET生产环境数据库未使用存储过程就不详细说明

原文链接:http://272426068.iteye.com/blog/1204561

发表评论
用户名: 匿名