1.Navicat Premium中的數據遷移工具
為了生產庫釋放部份資源,需要將API模塊遷移到mysql中,及需要導數據。
嘗試了oracle to mysql工具,遷移時報錯不說,這么大的數據量,用這類簡陋的工具不大可靠。
意外發現平時用的數據庫視圖工具Navicat Premium中有數據遷移工具,意外的好用。這個工具本身支持mysql,oracle,sqlLite,PostgreSql數據庫,因此而也提供了在不同數據庫之間遷移數據的功能。
遷移之前,先確保你建立了這兩個數據庫的connection。選擇Tools/DataTransfer。
選擇源數據庫,選擇你要遷的表,目標數據庫。
<喎?"http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20141101/2014110109051329.png" alt="\">
選擇周邊。
遷移進程,左上角為進度。
運行MySQL Migration Toolkit,1路“Next”到“Source Database”,在Database System當選擇Oracle Database Server,如果第1次使用會告之要求加載驅動程序ojdbc14.jar,然后重新啟動MySQL Migration Toolkit。
3、加載驅動程序以后,來到Source Database界面將變成以下的情勢,在其中填寫Oracle數據庫的連接信息,按“Next”繼續。
4、在Target Database中默許Database System為MySQL Server,在Connection Parameters中填寫相應的MySQL數據庫的連接信息,按“Next”繼續。
5、經過Connecting to Server測試通過后按“Next”,到Source Schemata Selection,點選準備進行數據遷移的數據庫后按“Next”繼續。
6、經過Reverse Engineering測試通過后按“Next”,在Object Type Selection,點Detailed selection按鈕,在下方左邊列表當選擇不進行遷移的表,將其放入右邊列表后,即左邊列表剩余的表都將進行數據遷移。選擇好以后按“Next”繼續。
Migration of type Oracle Table中要設置參數點Set Parameter按鈕。如果默許數據庫表為UTF8的話,則選擇Data consistency/multilanguage;如果默許數據庫表為GBK的話,則需要選擇User defined,并在下方填寫addAutoincrement=yes, charset=gbk, collation=gbk_general_ci, engine=INNODB。選擇好以后按“Next”繼續。
8、經過Migration測試通過后,再到Manual Editing,在這里可以修改建表腳本。由于Oracle與MySQL之間語法規則的差異,通常需要對腳本的數據類型和默許值進行調劑,比如Oracle中通常會對Timestamp類型的數據設置默許值sysdate,但在MySQL中是不能辨認的。在Filter當選擇Show All Objects,然后在Migrated Objects當選擇要修改腳本的表,再點擊左下方的Advanced就能夠進行腳本編輯了。修改完以后點擊右邊Apply Changes按鈕保存,按“Next”繼續。
9、在Object Creation Options中,選擇本地磁盤貯存數據表結構,按“Next”繼續。
10、經過Creating Objects創建所有表的結構終了,表中并沒有數據,按“Next”繼續。
101、1路“next”來到Data Mapping Options,選擇本地磁盤貯存數據表中的數據,按“Next”繼續。
102、經過Bulk Data Transfer創建所有表中的數據終了,按“Next”繼續。
103、來到summary顯示此次數據轉換的信息,可以保存成文件,按“Finish”完成。
這里要將oracle中表eventlogs的數據導入到mysql中。步驟以下:
1、在PL/SQL中用select * 搜索到eventlogs表的所有數據,然后右鍵點擊"Copy to Excel";以下圖所示:
2、將數據保存為excel表,并重名;以下圖:
3、打開mysql的可視化工具,我這里是Navicat,選擇表,點擊導入向導;以下圖所示:
4、選擇上圖中"導入類型"的"execel文件",然后點擊"下1步";以下圖所示:
5、接下來會讓你選擇文件,選擇你已保存的excel文件,并選擇“SQL Result”,以下圖所示:
6、然后1直點下1步直至步驟6,填充目標欄位。第1個欄位1般是空的,根據你的需要填。我這里填為"_id",并設為主鍵。以下圖所示:
7、然后1直點擊下1步,最后1步點擊開始。會出現1個“sql result”的表,重命名為你想要的表便可。如圖所示:
數據已導入了。其中表中數據類型若不合你的要求,你可以再設計表。