1. 程式人生 > >資料庫遷移之-Oracle 與MySQL互相轉換

資料庫遷移之-Oracle 與MySQL互相轉換

       理論上來說, MySQL 已經被Oracle 收購, 這兩者之間的Migrate 應該比較容易, 但實際的遷移還是有一些問題, 以下就說一說一些實現的方式和問題。

方式一:手動方式匯入匯出

手動的方式匯入, 就是操作步驟會比較繁瑣一些。 

對Table 的結構和資料:

1. 使用 SQL Developer 把 oracle 的 table 的schema 和 Data(.sql 和 .xls) 匯出

2. 使用 MySQL 的 WorkBench 建立 Table 和匯入資料。

這裡語法上會稍微有一些不同,所以需要略微做一些調整。

對於View 來說, 特別是複雜的有子查詢的OracleView 說,要匯入到MySQL 看起來就不是那麼容易了。

方式二: 使用工具Navicat 進行匯入

Navicat ,這是MySQL 官方網站上有人建議使用的工具。這是一個收費的軟體。目前的收費是 1000 到1600 人民幣。但是可以免費試用一個月。 

下載安裝地址:

破解軟體下載地址:

啟動的頁面如下:


遷移的流程如下:

1.      新建資料庫的連線

      

建立需要遷移的Oracle 和 MySQL 的資料庫連線。

另外,建立Oracle 連線的時候還需要下載一個oci.dll 的檔案。

下載地址:

下載之後,解壓到某個目錄:

在 Navicat  的工具 --> 選項下做類似如下設定:

 

細部可以參見:

完成設定後,重啟 navicat

2.  設定過連線之後, 接下來就可以進行表和資料的migrate 了

點選:工具 --》資料傳輸

 

在 "常規" 的標籤頁中設定需要 migrate 的連線

 

在 “高階” 的標籤頁中, 設定需要 migrate 哪些具體的內容:


配置完成之後,點 "開始" 就可以了。

基本上:對於 Table 的結構和資料的遷移的話,基本上沒什麼問題。

但是對於 View 的匯入,因為MySQL 的View 的語法不能有子查詢語句。

在Navite 上,可以看到從 Oracle 匯入到 MySQL 的時候, View 的Checkbox 不能選取。