最近在作項目時,有需求須要用到postgresql數據庫,而本來項目用的是mysql數據庫,因爲剛剛參加工做,這方面的經驗就比較少,因此只得在網上查閱了各類資料。網上大多介紹的是直接手動遷移的方式,感受這種方式的弊端是sql文件較大時,很容易出錯,且工做量大。固然網上也有對應的遷移工具,如mysql2psql等,可是時間倉促,不可能花時間去研究,再去使用。最後,在朋友的指導下,使用達夢數據交換平臺(簡稱DMETL)實現了mysql數據庫向postgresql數據庫的自動化遷移。下面就介紹下遷移的詳細過程。 mysql
注意:遷移是對數據庫數據的遷移,數據表要存在。 sql
1. 首先你的電腦得裝了pg數據庫、mysql數據庫和達夢數據交換平臺軟件,後文達夢數據交換平臺軟件都使用DMETL簡稱代替。DMETL安裝好後能夠在開始菜單中看到以下結構: 數據庫
2. 啓動DMETL服務,即 工具
啓動成功後以下圖所示: post
按任意鍵繼續,而後啓動達夢數據交換設計器 測試
使用默認的配置登陸服務,密碼爲admin。 spa
登陸成功以後以下圖所示。在界面上咱們能夠看到‘工程’、‘工具箱’等窗口。DMETL軟件功能強大,不只能夠實現多種數據庫的數據遷移,也能夠作數據庫數據的轉換,以及多種格式文件的轉換。總之功能強大,請讀者自行研究。 設計
3. 首先,咱們須要在工程窗口建立一個工程。 postgresql
在看到的‘轉換’目錄下右鍵建立一個轉換,使用工具欄裏的工具實現數據交換。 自動化
4. 建立數據源,即咱們須要將哪裏的數據交換遷移到哪裏。在數據源窗口,建立兩個數據源,一個mysql,一個pg。
確認前均可以測試鏈接一下,確保數據源配置正確。
配置後好,在數據源窗口中,選擇數據庫右鍵添加表。添加成功後,以下圖所示。
5. 配置好數據源後,接下來就能夠在工程的轉換文件裏使用工具箱中的工具來實現數據的交換。
雙擊‘表/視圖’在彈出的窗口中,選擇數據集,即要遷移的數據。
設置好源數據後,再選擇工具欄中的數據裝載裏的‘表’工具,建立目的數據表。
設置轉移的方向,從mysql表到pg表
保存編輯後的文件,點擊工具欄中的‘運行’圖標,執行文件完成數據的遷移。
以上就是經過DMETL作數據遷移的步驟,這種方式實現mysql數據庫數據向pg數據庫遷移時,要求目的pg數據庫已建立對應結構的表。適合於數據庫表由實體類自動生成,省去了手動創表的麻煩。固然在轉換文件中,能夠同時建立多個表的轉換過程,一次性完成的數據的遷移。包含外鍵的表需依賴於主表。DMETL功能比較強大,應該支持未創對應表的狀況,請讀者細心研究。