異構數據庫遷移 db2---oracle


                     異構數據庫遷移

其他數據庫遷移到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創建的連接,單擊創建,把資料檔案庫建立在此連接上。

                                7

 

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:這上面如何加上圖片呢?圖片為什么不顯示?

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM