通過Navicat Premium遷移Oracle到EDB遷移實戰

來源:互聯網
上載者:User

標籤:左右   sql   data-   man   mit   驗證   不同   遷移資料   result   

1.1 DB migration analysis

??在從Oracle向EDB遷移資料之前,須要做非常多準備工作。比方須要分析來源資料庫資料量大小、資料是否穩定、異構資料庫相容、編碼方式、商務邏輯(預存程序、函數、觸發器)等遷移情況,最好在遷移實施之前出一個遷移方案;選擇遷移工具實施資料移轉。儲存遷移日誌;遷移完畢後還須要驗證資料的完整性、一致性等,記錄條數檢查,檢查新舊資料庫相應的記錄條數是否一致。特殊樣本資料的檢查,檢查同一樣本在新舊資料庫中是否一致。
??遷移資料庫源為ORACLE,目標資料庫為EDB;遷移工具:navicat premium11;來源資料庫共149張表,本次遷移僅僅遷移64張表,因為本次遷移資料量不大,採取一次遷移(結構和資料)方式;使用Postgres Enterprise Manager工具建立EDB目標資料庫;遷移完畢後隨機抽取2個樣本進行遷移結果校正。

1.2 DB migration preparation

建立目標資料庫:
開啟Postgres Enterprise Manager工具。例如以1.1所看到的。



圖1.1
開啟剛加入的server。建立目標資料庫登陸使用者test。例如以1.2和1.3所看到的。 

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
圖1.2

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖1.3
對著Databases右鍵開啟建立資料庫對話方塊,例如以1.4所看到的,在Properties選項卡中填入目標資料庫名test並選擇上一步建立的登陸使用者test;然後切換到Definition選項卡。填寫資料庫相關屬性,當中“connection limit”預設就可以,最後點擊OK,例如以1.5所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖1.4



圖1.5
在目標資料庫中建立SCHEMA。開啟上一步建好的資料庫test(同來源資料庫schema)。然後右鍵Schemas選擇New Schema,填寫schema name並選擇owner。例如以1.6和圖1.7所看到的。



圖1.6

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖1.7
到此。目標資料庫已經建立好。

1.3 DB migration Implementation

本次遷移工具選擇navicat premium。開啟navicat premium。然後分別串連遷移來源資料庫和目標資料庫。
Navicat Premium 是一個可多重串連的資料庫管理工具。它可讓你以單一程式同時串連到 MySQL、SQLite、Oracle 及 PostgreSQL資料庫,讓管理不同類型的資料庫更加方便。最重要的是它不用裝Oracleclient。
假設不是必要,無需安裝 Oracle client。佔用空間大。有500M左右。裝完後非常難卸載乾淨。依據 Navicat 官方的文檔。事實上僅僅須要下載 Oracle 的 Instance Client就可以,具體方案能夠在百度中搜尋“Navicat Premium oci”。
串連來源資料庫,例如以1.8所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖1.8
串連目標資料庫,例如以1.9所看到的,開啟目標資料庫test,然後開啟schema。重新整理一下表、視圖等,確認表、視圖等以下的對象為空白,例如以1.10所看到的。



圖1.9

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖1.10
在navicat premium的菜單條中點擊工具,選擇傳輸資料。開啟傳輸資料對話方塊,在常規選項卡中填寫遷移資料庫資訊並選擇遷移對象,例如以1.11所看到的;然後開啟進階選項卡設定遷移詳情(遷移資料/遷移表結構/同一時候遷移資料和結構),例如以1.12所看到的。設定完後點擊“開始”就可以。



圖1.11



圖1.12
遷移完畢後。資訊日誌中的時間不再發生變化。能夠看到本次遷移共花費時間237.914s,例如以1.13所看到的。



圖1.13

1.4 DB migration verification

本次遷移驗證選取首尾兩張表做為樣本,進行正確性、完整性驗證。來源資料庫中的RI_ABANDON_INFO表概要資訊例如以1.14所看到的,遷移目標資料庫中的ri_abandon_info表表概要資訊例如以1.15所看到的,經過對照能夠覺得該表資料移轉沒有問題。



圖1.14



圖1.15
在來源資料庫中對錶RI_ABANDON_INFO右鍵,選擇設計表。例如以1.16所看到的,相同操作目標資料庫中的ri_abandon_info表。例如以1.17所看到的,通過對照兩個表對象的約束(主、外鍵)、索引等資訊,確定該表表結構遷移沒有問題。



圖1.16

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖1.17
用相同的方式驗證來源資料庫中的RI_TKSU_WHITE_LIST_HIS表和目標資料庫中的ri_tksu_white_list_his表,確定被驗證表的表結構和資料移轉沒有問題。

1.5 DB migration results

經過對樣本的驗證對照,基本確認本次資料庫遷移成功。

通過Navicat Premium遷移Oracle到EDB遷移實戰

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.