MySQL Migration Toolkit是mysql官方提供的資料庫移植工具,可以將任何資料來源轉換成mysql的資料,也可以將mysql的資料轉換成其它類型的資料。需要java支援
支援的資料庫遷移
- Access-to-MySQL
- DBF-to-MySQL
- Excel-to-MySQL
- MSSQL-to-MySQL
- MySQL-to-Access
- MySQL-to-Excel
- MySQL-to-MSSQL
- MySQL-to-Oracle
- Oracle-to-MySQL
相關連結
- 官方網站 - http://www.mysql.com/products/tools/migration-toolkit/
- 下載 http://dev.mysql.com/downloads/migration-toolkit/1.0.html
下面是使用例子:
MySQL Migration Toolkit是MySQL出的資料移轉工具(適用於MySQL5.0或以上),使用並不複雜,支援Oracle,Microsoft SQL Server,Microsoft Access,Sybase,MaxDB到MySQL之間的轉換。以下執行個體是Oracle到MySQL的。
1. 安裝jdk1.6
MySQL Migration Toolkit需要jre1.5.0.8以上的支援。
2. 運行MySQL Migration Toolkit
點擊“開始”-“程式”-“MySQL”-“MySQL Migration Toolkit”,運行MySQL Migration Toolkit。點擊“Next”
3. 選擇“Direct Migration”,點擊“Next”
4.在“Source Database”中填寫你要轉換的來源資料庫的一些參數
“Database System”為資料庫系統類別型;這裡選Oracle
“Driver”為使用的驅動程式;
“Service”為來源資料庫的服務名;
“Hostname”為來源資料庫檔案的ip和port;
“Uesrname”為來源資料庫的使用使用者名稱;
“Password”為來源資料庫使用使用者密碼。
選擇Oracle的Driver時,可能需要載入Oracle JDBC驅動(ojdbc14.jar)。
其它資料庫可能需要手工寫JDBC URL,根據需要自己寫吧。
5.在“Target Database”中填寫你轉換後的資料庫類型的一些參數
“Database System”資料庫系統是MySQL Server;
“Hostname”為主機名稱,“Port”為連接埠;
“Username”為資料庫使用者名稱;
“Password”為資料庫使用使用者密碼。
這裡需要手工寫JDBC URL連結:點擊最下面的Advanced鍵,出現一個方框,提示輸入 "Connection String:" jdbc:mysql://IP:PORT/?user=USER&password=PASSWD&useServerPrepStmts=false&characterEncoding=gbk
IP、PORT、USER、PASSWD根據MySQL伺服器的ip,資料庫使用者名稱,密碼填寫。
6.兩個資料庫的參數都填寫完成後,下一步就是伺服器的串連
出現“Execution completed successfully”就說明伺服器串連成功,之後點擊“Next”。
7.選擇要遷移的資料庫
選擇我們需要遷移的Oracle Schema。
8.Reverse Engineering,顯示“Execution completed successfully”則說明資料轉換成功
9.Object Type Selection
選中“Objects of type Oracle Table”和 “Objects of type Oracle View”,如需遷移其它物件類型,在相應選項前勾中。
通過“Detailed selection”選擇不需要遷移的對象。
10.Object Mapping
修改“Migration of type Oracle Schema”和“Migration of type Oracle Table”
“Migration method”選擇“Generic”;點擊“Set Parameter”,選擇"User defined",設定"charset=gbk,collation=gbk_ci";
11.Migration,顯示出“Execution completed successfully”則該步成功
12.Migrated Objects
這裡列出了有問題的映射對象及其建立指令碼,主要是一些視圖或預存程序,這個工具無法確認文法是否正確,另一個選擇就是只遷移表了;
13.Object Creation Options
這裡可以選擇直接在MySQL上建立對象還是儲存為指令碼後用指令碼建立對象。
如儲存指令碼在“Create Script File for Create Statements”中填寫匯出檔案的存放位置和名稱,這裡產生的是資料庫表結構。
14.Creating Objects顯示“Execution completed successfully”則表示對象建立成功;
15.Creation Results顯示“No creation problem found”表示上面沒有問題
16.選擇實際資料的傳輸方式
可以線上傳輸資料,當源和目標資料庫和遷移工具不在同一台機器上時,會在網路產生較大的資料流量,請注意。
17.最後就是資料轉送了,傳完後會有一個Summary,顯示遷移過程是否有問題;
文章出處:飛諾網(www.firnow.com):http://dev.firnow.com/course/7_databases/mysql/Mysqljs/20100713/434231.html