a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 129|回复: 0

[综合] 任重道远迁移路之DB2到Oracle

[复制链接]
发表于 2012-8-4 13:54:49 | 显示全部楼层 |阅读模式
迁移之路任重而道远,如何迁移才能比较让人比较放心呢?这里给出一个技巧,希望对你的迁移有所帮助。     1、在db2数据库中存在表tbtest,有下列类型字段% W% o: E* w' {' A8 ?/ f
列名db2oraclec1char(10)char(10)c2varchar(10)varchar2(10)c3integernumber(10)c4datedatec5timestamptimestampc6decimal(24,2)number(24,2)c7decimal(12,7)number(12,7)* f5 c# q, g  F
    2、创建从db2中导出数据" k# D1 V) ~3 T; e
    export tbtest.del of del messages tbtest.msg select * from tbtest;
4 O+ ^# V3 O; ]. d( S- Y    注:在tbtest.msg文件中有警告信息,一般是一条记录变成了多行,需要手工改改。0 g* |; t0 H9 I2 G! J
    3、创建oracle数据导入控制文件tbtest.ctl,内容如下:
3 g# J( V+ d) W' [+ v/ s5 h
+ o! ]3 \' `! r- Y2 z6 ?; G3 s) yload data infile ‘tbtest.del’ truncate into table tbtest fields terminated by ‘,’ optionally enclosed by ‘”‘ trailing nullcols ( c1, c2, c3, c4 date ‘yyyymmdd’, c5 timestamp ‘yyyy-mm-dd hh24.mi.ss.xff’, c6 “to_number(:c6,’9999999999999999999999.99′)”, c7 “to_number(:c7,’99999.9999999′)” )      注:如果是追加数据,将truncate改为append即可。
6 ]6 N8 s+ Q% N8 O% j7 N6 r    4、导入数据
; C3 X  f9 B# T/ ^    sqlldr shen/shen@db control=tbtest.ctl log=tbtest.log
: o1 Y  [  [; h# A2 b    其次:
" A4 p" q  v  j# f$ V    1.利用DB2的db2look命令可以直接导出数据库信息,包括:表结构,视图,函数,存储过程(唯一遗憾的是将DB2系统表信息等也导了出来,郁闷!)。6 c0 K% |( Y$ {9 b8 b
    2.将创建表的语句单独存在一个文件,将Varchar用Varchar2代替。(当然表中字段没有大数据类型)。
$ {" l5 A+ l) y- b# g% [    3.在Oracle sql developer中执行建表语句。0 n2 ]) B2 l5 B- c0 {6 w# Y4 Z
    4.利用PB将表逐个导入到Oracle中,数据迁移完成。(数据表很多,导了一天才导完,方法很笨吧?)。
: A& ^4 F/ G8 `; I    建议:" n" [) m7 f) [/ l4 O: M
    1.如果是少的数据表,可以用Kettle工具,这个工具可以将源表结构自动转化为目标表结构。
9 x6 O- s# O- {* y, T* \: z# h, C    2.数据导出、导入最好利用PB中完成。起初,我将表导成Excel,利用Oracle工具导入,总是出现许多错误。而且对于Date类型数据,很难处理,但PB可以自动转化。0 j2 `. e  t1 Q3 G5 H3 X
    3.Kettle工具功能很强大,但没有时间来研究,它可能能完成很多功能。! ?# l& c% X: t6 ]1 C1 H
    4.PowerBuilder,PowerDesign在数据库更改、表变动或数据迁移有许多特性。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-19 01:45 , Processed in 0.233235 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表