1 編寫目的指導項目中項目工程中涉及到的由sql server 2000數(shù)據(jù)庫遷移到oracle 2 測試環(huán)境測試環(huán)境對應情況如下表:
3 軟件下載參考網址
4 安裝工作4.1 配置遷移環(huán)境遷移的環(huán)境也就是配置與服務器連接和對遷移工具的配置過程。 4.1.1 配置數(shù)據(jù)庫連接此次遷移通過操作機的windows平臺分別連接到需要遷移的sql server 2000數(shù)據(jù)庫服務器和oracle 如下截圖所示為sql server 2000服務器網絡連接配置端界面,可根據(jù)實際需要啟用多種協(xié)議,在此我們選擇TCP/IP協(xié)議,并且選擇好需要連接的實例名,即遷移的數(shù)據(jù)庫所在的實例。 配置TCP/IP協(xié)議的過程如下圖所示,點擊啟用的協(xié)議后,選擇‘屬性’按鈕,即可彈出一個端口設置信息,這個端口號可以默認或自己設置,需要記住這個端口號,在配置客戶端連接的時候需要用到。 在本地機,也就是操作機上需要安裝sql server 2000客戶端,安裝好后選擇安裝后的程序菜單中的客戶端網絡實用工具,如下圖,根據(jù)服務器端配置協(xié)議信息及端口信息填寫好后,單擊確定,即完成客戶端網絡連接的配置工作。 配置完客戶端連接信息后,需要配置ODBC數(shù)據(jù)源管理器,在操作機選擇‘開始-〉管理工具-〉數(shù)據(jù)源’然后出現(xiàn)如下圖所示的界面,在系統(tǒng)DSN選項中選擇‘添加‘,即出現(xiàn)DSN配置自動引導界面,根據(jù)提示填寫必要信息,單擊下一步; 按照要求填好相應信息,點擊下一步 在此選擇網絡配置信息,點擊客戶端配置后出現(xiàn)如下界面 點擊確定,出現(xiàn)下圖,選擇需要連接的數(shù)據(jù)庫,單擊下一步 即可進行測試。驗證配置信息是否正確 4.1.2 配置oracle客戶端最好能夠使用和服務器端相同的版本的客戶端,當然這里使用oracle (1) 進入Oracle Net Manager配置界面如圖: (2) 單擊“本地“出現(xiàn)下拉式菜單,選擇”服務命名“點擊左上綠色的添加符號”+“,出現(xiàn)如下圖所示的界面 (3) 輸入網絡服務名后,單擊下一步。出現(xiàn)下圖所示界面,選擇第一項的TCP/IP: (4) 點擊下一步。進入協(xié)議設置向導,輸入需要連接的服務器的主機名或IP地址,端口號可以默認1521就行 (5) 進入下一步,輸入服務名,一般就是全局數(shù)據(jù)庫名或SID,與網絡服務名對應,選擇連接類型為“共享服務器“: (6) 點擊下一步,即可測試連通性,如果測試不成功,就可以更改登錄用戶,因為默認的測試用戶是scott/scott,故可能已經被修改: 測試成功的話,就已經成功連接到oracle服務器端了。 4.1.3 安裝配置sql developer工具對sql developer的配置需要去指定網站下載相應的jdbc驅動程序包,然后添加到sql developer 中即可建立相應的環(huán)境。該過程如下: 該版本移植工作臺已使用需要針對特定遷移數(shù)據(jù)庫的 JDBC 驅動程序,對于SQL Server 2000,需要下載一個名為 jtds-1.2-dist.zip 的存檔文件,二進制驅動程序 jar 文件位于該存檔內的一個名為 jtds-1.2.jar 的文件中。安裝sql developer相對簡單,只需要下載sqldeveloper- 出現(xiàn)下圖所示界面。點擊 添加適合第三方的移植JDBC驅動程序:點擊工具,選擇 <首選項〉,彈出的對話框選擇 <數(shù)據(jù)庫>->第三方驅動程序,也就是下圖的界面 選擇第三方JDBC驅動程序選項,點擊添加條目,將指定的JDBC插件路徑添加進去即可。 單擊確定,即完成,出現(xiàn)如上的圖形界面,可支持多種數(shù)據(jù)庫移植。 下圖,建立sql server 服務器的連接信息,按照上面的要求填寫好信息后可以測試,顯示連接成功后,可以單擊檢索數(shù)據(jù)庫按鈕即可以選擇需要連接的數(shù)據(jù)庫,也就是需要遷移的數(shù)據(jù)庫 成功后即可以通過樹形目錄查看該數(shù)據(jù)庫的結構信息 5 遷移過程完成了如上的操作,也就完成了遷移工作的大部分工作,由于該工具圖形化界面較強,后期的遷移工作,很多都是自動引導功能,故遷移也就是搞清這個過程即可。建立了數(shù)據(jù)庫的連接后即可進入下一步計劃,就是遷移的過程,首先需要在遷移的目標數(shù)據(jù)庫建立一個名為資料檔案庫,用戶sql server 2000數(shù)據(jù)庫信息捕獲功能的實現(xiàn)。操作如下:點擊目標oracle數(shù)據(jù)庫連結名,鼠標右鍵,會出現(xiàn)資料檔案庫的菜單,選擇創(chuàng)建資料檔案庫,出現(xiàn)如下所示的界面 選擇需要創(chuàng)建的目標數(shù)據(jù)庫,也就是遷移到的數(shù)據(jù)庫連接名,即可單擊創(chuàng)建,進入下圖所示的創(chuàng)建過程 安裝資料檔案庫完成后,即可開始捕獲數(shù)據(jù)庫的過程,單擊需要遷移的sql server 數(shù)據(jù)庫,右鍵即可出現(xiàn)捕獲sql server 服務器的選項,選擇該項,就開始sql server 2000捕獲數(shù)據(jù)庫,也就是對遷移數(shù)據(jù)庫的對象類型進行一個分析,彈出一個捕獲數(shù)據(jù)庫的會話框,并顯示捕獲的進度和過程。 捕獲完成后,關閉該對話框,即可在sql developer工具界面的左邊出現(xiàn)捕獲的數(shù)據(jù)庫的菜單欄,右鍵單擊該捕獲模型名,選擇轉換數(shù)據(jù)庫,即可彈出如下所示的對話框。 轉換數(shù)據(jù)庫的過程也就是對兩種不同類型的數(shù)據(jù)庫的分析和數(shù)據(jù)轉換關系得對應過程,該過程會根據(jù)轉換過程中源數(shù)據(jù)庫和目標數(shù)據(jù)庫的不同類型關系,生成可以在oracle 數(shù)據(jù)庫中運行和創(chuàng)建與源數(shù)據(jù)庫信息對應的數(shù)據(jù)庫模型的腳本,默認會出現(xiàn)在worksheet中,其sql 語句大體如下 : 選擇要遷移到的目標oracle數(shù)據(jù)庫,直接點擊運行,要注意的地方就是,在這個腳本起始部分會有一個創(chuàng)建用戶的sql 語句,如果不做改變的話,系統(tǒng)會默認創(chuàng)建該用戶后,直接在該用戶下,運行后面的數(shù)據(jù)庫的創(chuàng)建信息。所以需要在移植數(shù)據(jù)的時候重新使用這個創(chuàng)建的用戶建立連接。當然這時可以根據(jù)需要對該腳本中部分語句做一些修改,可以把創(chuàng)建用戶信息的sql 語句去掉,那么系統(tǒng)就會默認在此用戶下建立數(shù)據(jù)庫信息,運行完該腳本語句后,即可進行最后的工作,即數(shù)據(jù)移植功能。 以上面創(chuàng)建的用戶建立新的連接。鼠標右擊轉換的 數(shù)據(jù)庫模型,選擇移植數(shù)據(jù),出現(xiàn)如下所示的會話窗口,選擇好源數(shù)據(jù)庫和目標數(shù)據(jù)庫的連接名。 點擊確定,彈出新的會話窗口,顯示數(shù)據(jù)移植過程的進度信息,以及可以觀察移植中可能出現(xiàn)的錯誤信息。 此移植過程完全智能化,不需要人工干預,完成數(shù)據(jù)移植后,即可彈出完成對話信息,選擇關閉該會話框的按鈕,此時,我們即可在目標數(shù)據(jù)庫中找到移植數(shù)據(jù)的表信息 6 結果測試關于遷移后的對應關系,在先前生成的腳本中創(chuàng)建了用戶,并指定默認表空間為user,遷移完成后,利用該用戶登錄,即可查詢相應的數(shù)據(jù)信息 1. 利用數(shù)據(jù)匯總查詢數(shù)據(jù):select count(*) from table_name ;對比源和目的數(shù)據(jù)庫。另外可以通過數(shù)據(jù)庫連接軟件連接到目的oracle 數(shù)據(jù)庫,可以查看相應的數(shù)據(jù)信息。 2. oracle官方提供了DMV數(shù)據(jù)移植驗證工具可以通過運行程序,生成對比分析文件。目前支持的sql server 2000和sybase數(shù)據(jù)庫的功能,但需要建立JDBC連接。連接網址http://otn.oracle.com/tech/migration/dmv 下載DMV.ZIP工具包解壓后。確定如下信息: - JDBC class path - Source database URL, user name, and password - Oracle Database URL, user name, and password 然后進入提示符,運行如下命令: Prompt> java -jar dmv_install_dir\dmv.jar PropertiesFilePath 即可生成一個對比源數(shù)據(jù)庫和目的數(shù)據(jù)庫移植信息的report文本文件,可以通過此文本文件檢查移植的完整性。 |
|