异构数据库迁移

其他数据库迁移到oracle,以移植db2数据库对象到Oracle的操作说明为例,其他数据库迁移到oracle类似。

移植之平台和相关工具

OS:linux

DBMS:db2  Oracle 10g for  linux

Migration Tool:Oracle sql developer-2.1.1.64.45

Sql Develper和Migration Workbench简单介绍

以下是摘自Oracle官网:

Ⅰ Oracle SQL Developer 是一个免费的图形化数据库开发工具。使用 SQL Developer,您可以浏览数据库对象、运行 SQL 语句和 SQL 脚本,并且还可以编辑和调试 PL/SQL 语句。您还可以运行所提供的任何数量的报表,以及创建和保存您自己的报表。SQL Developer 可以提高工作效率并简化数据库开发任务。

SQL Developer 可以连接到任何9.2.0.1 版和更高版本的 Oracle 数据库,并且可以在 Windows、Linux 和 Mac OSX 上运行。

Ⅱ Oracle SQL Developer 移植工作台是重新开发的新工具,它极大地扩展了原来的 Oracle 移植工作台的功能和可用性,可以将 Microsoft Access、Microsoft SQL Server 和 MySQL以及db2(早期低版本的sqldeveloper不支持db2) 数据库移植到 Oracle。

移植之驱动配置

1) 检查下你装的Sql Developer的版本,我的是Oraclesql developer-2.1.1.64.45。

2) 配置Sql Developer的运行环境,因为如果设置不好,我们将不能连接第三方数据库(非oracle数据库),本文指的就是db2.

背景知识1:不加载驱动之前,如果我们新建立一个数据库连接时,会出现如下窗口。这里可以连接的数据库,仅仅是Oracle和Access (即是两种默认的数据库)

见图(一)

图(一)

怎么可以让SQL Developer可以访问其它数据库?

答案是:添加JDBC 驱动,使其可以访问诸如db2、My Sql、Sybase等数据库.

添加三方数据库支持的方法

点击sql developer的菜单的选项→ 工具(Tools)→ 首选项(Prefences).见图(二)。

图(二)

点击弹出对话框中数据库(Database)选项→第三方JDBC 驱动程序(Third Party JDBC Drivers)→添加条目,把你的驱动程序加进去。如下图三

图 三

补充说明,这个应该先说的. 即是我们首先要准备好db2的JDBC驱动。

至此我们仅仅是做了可以建立db2的连接的准备工作。

真正的开始

以上只是配置Oracle Sql Developer可以连接db2,这是前提.之下的才是移植的步骤

Step 1   create a oracle connect

鼠标选中连接,然后单击右键,选择建立新连接,弹出新建/选择数据库连接窗口,连接名任意命名,用户system 口令及system用户密码,主机名oracle数据库所属主机ip,端口1521,sid 是oracle的实例名,填写好的样式如下图四

图四

建立次连接的用途:  1 把资料档案库建立在此连接上

2执行移植过程中产生的DDL语句

3 为什么用system用户连接,涉及到权限问题,最好用system用户。

Step 2 :creat a DB2 connect

方法同建立Oracle的连接类似,配置是否成功,点击测试可以查看是否成功,这个连接就是你要迁移的源数据库目标。这里不再赘述。截图见图五:

图五

step 3 create arepository(创建档案资料库)

这一步创建资料档案库,工具---à移植-à资料档案管理-à创建资料档案库如图六

图六

紧接上图,鼠标左键单击创建资料档案库,则会出现如下图七样例,从下列菜单中选择test1_25,此连接名就是step1创建的连接,单击创建,把资料档案库建立在此连接上。

Step 4  Capture table (捕获表)

这时依次展开之前建立的db2的连接(我的例子名称是db2test13),找到要迁移的表,选择捕获表(Capture db2),所捕获的表即是迁移的表,如图八,点击之后会弹出捕获数据库窗口,捕获结束后,点击关闭按钮即可,这时你再看左边栏下的捕获的类型将多出一个db2数据库样的连接,图九标示红线部分

图八

图九
  Step 5 Convert to Oracle model

选中刚才捕获表后的那个连接,及图九红线标示所指连接,右键选择转化为oracle模型,这是左边栏的转换的模型将多一个节点,如图十

图十

Setp 6 修改方案名

此处需要修改方案名,方案名要与导入数据库中的方案名相同如图十一。

图十一

Step 7  Generate Sql

右击Step 5下的转换的模型→点击生成(生成Oracle能识别的SQL语法),见图十二,生成的sql见图十三。

图十二

图十三

Step 8  execute sql

连接上要导入的数据库,如图十四标示,执行刚才生成的sql。

图十四

Step 9  Move Data

Step 5下的转换的模型,右键,选择移动数据。如下图十五

图 十五

图 十六

Step 10  Test

select table_name from user_tables 通过此查询可以查询出刚才迁移的表名

select *  from 表名(迁移的表名) 查询迁移的数据

ps:这上面如何加上图片呢?图片为什么不显示?

异构数据库迁移 db2---oracle的更多相关文章

  1. MSSQL数据库迁移到Oracle

    MSSQL数据库迁移到Oracle 最近要把一个MSSQL数据库迁移到Oracle上面,打算借助PowerDesigner这个软件来实现;今天简单研究一下这个软件的运用;把一步简单的操作步骤记录下来: ...

  2. mysql数据库迁移到oracle数据库后 如何删除相同的数据

    mysql数据库迁移到oracle数据库后 如何删除相同的数据 首先搞清楚有多少数据是重复的 select pid from product group by pid having count(pid ...

  3. MSSQL数据库迁移到Oracle(二)

    上一篇文章采用的PowerDesigner实现对MSSQL数据库迁移到Oracle,后来博友建议用ESF Database Migration Toolkit进行迁移会更加简单方便,本文就是通过一个实 ...

  4. 异构数据库迁移——DATAX

    背景 在最近接触到的一个case里面,需要把db2的数据迁移至oracle,客户可接收的停机时间为3小时. 同步方式的比较 一说到停机时间,大家第一时间想到Oracle公司的GoldenGate实时同 ...

  5. MYSQL数据库迁移到ORACLE数据库

    一.环境和需求1.环境 MySQL数据库服务器: OS version:Linux 5.3 for 64 bit mysql Server version: 5.0.45 Oracle数据库服务器: ...

  6. Oracle GoldenGate配置异构数据库数据传输(oracle到sqlserer)的dml操作(带pump进程)

    实验环境:os01:Red Hat Enterprise Linux Server release 5.1 (32位)db01:oracle 10.2.0.1.0 os02:Windows 7 (32 ...

  7. 用kettle实现数据库迁移之oracle到mysql

    项目完成后,需要把历史oracle 的数据库转移mysql 用kettle 转换数据. 步骤: 1.打开spoon.bat,文件-->新建-->转换,点击“主对象树”,DB连接右键“新建” ...

  8. sqlserver 2008R2数据库迁移oracle

    x项目需要,将以前的sqlserver数据库迁移的oracle数据库中,由于以前对oracle只是在DML语句的步骤,所以总结一下这次遇到的问题以及具体步骤 1,oracle新建数据库 新建Oracl ...

  9. 从 Microsoft SQL Server 迁移到 Oracle

    来源于:http://www.oracle.com/technetwork/cn/database/migration/sqlserver-095136-zhs.html Oracle SQL Dev ...

随机推荐

  1. 阻塞队列BlockingQueue用法(转)

    多线程环境中,通过队列可以很容易实现数据共享,比如经典的“生产者”和“消费者”模型中,通过队列可以很便利地实现两者之间的数据共享. 假设我们有若干生产者线程,另外又有若干个消费者线程.如果生产者线程需 ...

  2. Android高手进阶——Adapter深入理解与优化

    Android高手进阶--Adapter深入理解与优化 通常是针对包括多个元素的View,如ListView,GridView.ExpandableListview,的时候我们是给其设置一个Adapt ...

  3. Swift - 时间控制器NSTimer(每隔一定时间执行某个函数)

    时间控制器NSTimer可以实现定时器功能,即每隔一定时间执行具体函数,可以重复也可以只执行一次. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 cl ...

  4. 带着项目学PHP第九讲 - 如何给ecshop的wap版本首页和商品页添加商品图片

    ecshop的wap版本自身不带图片, 所以看起来光秃秃的,非常不讨人喜欢, 网络上关于wap的模板就不像pc版那么多,容易找到, 而且能找到的都是要花钱买的, 虽然这个小小的改动不能替代找个合适的模 ...

  5. DLL五篇

    http://www.cnblogs.com/NeuqUstcIim/archive/2009/01/12/1374511.htmlhttp://www.cnblogs.com/NeuqUstcIim ...

  6. RSA加密前言

    RSA:非对称加密,近期因为工作需要需要实现了一个RSA加密方案.查阅文档无数,主要是通过看他们代码及其引用他人的代码基本实现了跨平台的RSA方案.现在唯一的缺陷是加解密花费的时间太多,下周会把加解密 ...

  7. [Android]ADT Run时候报错:The connection to adb is down, and a severe error has occured

    The connection to adb is down, and a severe error has occured. 之 ..\sdk\platform-tools\adb.exe and c ...

  8. POJ题目分类【实在是不知道哪个是原创了】

    原地址:http://blog.csdn.net/liuqiyao_01/article/details/8477801 初期:一.基本算法:     (1)枚举. (poj1753,poj2965) ...

  9. 关于 typedef & typedef struct & typedef union理解 --写给不长脑子的我

    来源: http://zhidao.baidu.com/link?url=qxzkx5gaoCfnHnygYdzaLEWkC45JqNYYUk42eHHjB0yB3ZMgHv6lGjnq3CRfgQw ...

  10. nyoj 130 同样的雪花 【哈希】

    同样的雪花 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描写叙述 You may have heard that no two snowflakes are alike. ...