您好,登錄后才能下訂單哦!
本篇內容主要講解“怎么將原有的Oracle數據庫中的數據導入到MySQL中”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么將原有的Oracle數據庫中的數據導入到MySQL中”吧!
Oracle中的數據某些情況下需要導入到MySQL中,如何方便快捷地導入呢?使用MySQL GUI Tools中的MySQL Migration Toolkit就可以輕松搞定,該工具對CLOB、BLOB類型的數據也有非常好的支持。
1、 運行MySQL Migration Toolkit,一路“Next”到“Source Database”,在Database System中選擇Oracle Database Server,如果第一次使用會告之要求加載驅動程序ojdbc14.jar。
加載驅動程序之后,界面將變成如下的形式,在其中填寫Oracle數據庫的連接信息,按“Next”繼續。
2、 在Target Database中默認Database System為MySQL Server,在Connection Parameters中填寫相應的MySQL數據庫的連接信息,按“Next”繼續。
3、進行數據庫連接測試,測試通過后按“Next”到Source Schemata Selection,點選準備進行數據遷移的Schemata后按“Next”繼續。
4、在Object Type Selection,點Detailed selection按鈕,在下方左側列表中選擇不進行遷移的表,將其放入右側列表中,即左側列表剩余的表都將進行數據遷移。選擇好之后按“Next”繼續。
5、在Object Mapping的Migration of type Oracle Schema,如果要設置參數,點Set Parameter按鈕。如果默認數據庫表為UTF8的話,則選擇Multilanguage;如果默認數據庫表為GBK的話,則需要選擇User defined,并在下方填寫charset=gbk, collation=gbk_general_ci。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”繼續。
6、再到Manual Editing,在這里可以修改建表腳本。由于Oracle與MySQL之間語法規則的差異,通常需要對腳本的數據類型以及默認值進行調整,比如Oracle中通常會對Timestamp類型的數據設置默認值sysdate,但在MySQL中是不能識別的。在Filter中選擇Show All Objects,然后在Migrated Objects中選擇要修改腳本的表,再點擊左下方的Advanced就可以進行腳本編輯了。修改完之后點擊右側Apply Changes按鈕保存,按“Next”繼續。
7、然后一路“Next”,如果沒有提示出錯的話,就可以將指定表中的數據導入MySQL了。如果有提示出錯信息,則需要返回到Manual Editing處對腳本重新進行修改。
需要補充一點,在導大容量數據特別是CLOB數據時,可能會出現異常:“Packets larger than max_allowed_packet are not allowed”。這是由于MySQL數據庫有一個系統參數max_allowed_packet,其默認值為1048576(1M),可以通過如下語句在數據庫中查詢其值:
show VARIABLES like %max_allowed_packet%;
修改此參數的方法是在文件夾找到my.ini文件,在my.ini文件[mysqld]中添加一行:
max_allowed_packet=16777216
重啟MySQL,這樣將可以導入不大于16M的數據了,當然這數值可以根據需要作調整。
到此,相信大家對“怎么將原有的Oracle數據庫中的數據導入到MySQL中”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。