Oracle

Oracle 到 PostgreSQL

  • February 4, 2019

我有一些執行 Oracle 10 和 11 的測試數據庫,我計劃嘗試遷移到 PostgreSQL。

一些Google搜尋暗示 perl 腳本“ora2pg”可能有用,而且是免費的。然而,現在我花了太多時間試圖讓它在我的 winx64 機器上執行,因為 MinGw 不會編譯它並且 activeperl 模組討厭我。

是否有任何其他有價值的免費工具可供查看,或者我應該啟動並執行 Linuxbox 並以這種方式嘗試 ora2pg?

問候

我們還發現現有工具難以使用,因此最終使用 python 中的 sqlalchemy 庫編寫了一個解決方案。我們的一般方法是鏡像源數據庫;必要時巧妙地轉換數據類型;創建目標數據庫;以塊的形式複制數據。

例如,請參閱:https ://github.com/MIT-LCP/oracle2postgres/blob/master/migration.ipynb 。使用這種方法,我們將一個相當大的數據庫(約 100 個模式,超過 1000 個表,一些超過 2 億行的表)從 Oracle 遷移到 Postgres。

有關更多詳細資訊,請參閱:https ://github.com/MIT-LCP/oracle2postgres 。該軟體包可以使用pip install oracle2postgres. 如果您在重用程式碼時遇到問題,請隨時提出問題,我們將盡最大努力提供幫助。

您應該嘗試使 ora2pg 工作。這是最好的工具,可能是唯一的工具。此外,如果你不能讓它工作,你可能會在使用許多其他可能的 PostgreSQL 工具時遇到問題。嘗試尋求幫助解決這些問題,您將能夠使用正確的工具。

引用自:https://dba.stackexchange.com/questions/17405