從 Oracle 到 Postgres: 最完整的轉移指引五步驟 1/4篇 – PostgreSQL 與 Oracle 差異對比
內容目錄
延伸閱讀 :
閱讀系列文章
本系列由 4 篇文章組成,分別為 ORACLE 與 POSTGRES 的比較(本篇)、資料庫評估、架構遷移、資料庫功能測試。歡迎閱讀系列中的其他文章,以了解完整的資料庫遷移步驟。
從 Oracle 轉移到 PostgreSQL 開源資料庫的企業數量正快速增長中,而這個完整的導引將提供用戶資料庫轉移過程所需的一切。
對於任何對轉移過程感到恐懼或懷疑的使用者來說,本篇將分析 PostgreSQL 資料庫系統對比 Oracle 的優勢以及採用 PostgreSQL 後可獲得的好處── 也就是降低成本、增加靈活性和客製化程度。
接下來,轉移過程將被分解成不同步驟,包含評估、模式轉移、功能測試、性能測試和數據轉移,並根據各階段進行逐步指導。
此外,兩種資料庫之間的關鍵系統性差異和不兼容之處被逐一列出,以幫助使用者避開常見錯誤,並權衡替代轉移方案,最終提出免費的有效轉移工具清單。
此導引除了提供給準備從 Oracle 遷移到 PostgreSQL 的用戶,也為正考慮引入 PostgreSQL 卻擔心轉移複雜性的 Oracle 用戶給予保證。
資料庫轉移是一種將軟體 (Definitions)、資料和儲存程序於平台,並改變應用程式的過程,過程中包含選擇、準備、擷取、轉換以及將資料應用於不同平台間。
使用者在轉移至 Postgres 的過程會經歷不同的階段,如挑選正確的架構、相容性檢核、改寫不相容的物件、功能和效能測試、資料轉移和轉移後檢查。
下方列舉一些從 Oracle 遷移至 PostgreSQL 的益處
雖然從 Oracle 遷移至 Postgres 益處良多,但遷移資料庫的過程並非容易。
因為資料在 RDBMS 之間進行轉移,而根據資料類型或是異質結構,整個過程將會是一個非常耗時的挑戰,因此使用者需用正確的工具來處理問題。
遵循以下步驟,問題將迎刃而解:
簡而言之, PostgresQL 相較 Oracle 有以下七點特性:
Oracle 和 PostgreSQL 都提供用於資料庫對話的 API 。受益於 PostgreSQL 的開源性質,開發者能夠使用 PostgreSQL 的原始碼進行二次開發。
Oracle 使用內建認證系統, PostgreSQL 則依賴主機驗證,因此它支持廣泛的驗證方法。這是為何 Postgres 使用者更有彈性的驗證選擇,並可以選擇委託代執行過程。
Oracle 套件多為專有性質,PostgreSQL 與之相比, 受益於其開源的特性和龐大社群支援,因此 Postgres 具有成千上萬的軟體套件供使用者選擇。
Oracle 採用內建程式語言 PL/SQL ,而 PostgreSQL 不僅容納 PL/pgSQL ,還擁有各種語言及延伸系統,並允許用戶創建額外的程序語言作為插件以及綁定更多程式語言。
Oracle 提供全球化工具,包括開發套件和 unicode 編碼支持。
相較之下, PostgreSQL 採用內建的在地化服務系統,並提供自動字元編碼和校核功能。
PostgreSQL 能夠在單一讀取群集中創造無限的節點,並使讀取操作的成本趨近於零,這也讓用戶能對調整每個工作量。雖然使用者也可以在 Oracle上 這樣做,但卻需承擔每個節點的額外成本。
Oracle 有著優秀的垂直讀取可擴展性,然而 PostgreSQL 卻能於單一叢集中創建大量唯讀(Read Only)的 StandBy ,而這僅取決於用戶願意提供的資源量。
閱讀系列文章
EDB 透過 EDB Postgres™ 平台強化 PostgreSQL 開源資料庫的性能、可調能力(scalability)、管理性、安全性和兼容性。透過 EDB Postgres 平台,客戶能擁有企業級的關鍵能力管理多模型資料(multi-model data),並能在多樣環境中快速部署。
PostgreSQL 開發團隊於 2023 年 5 月 25 日發布了 PostgreSQL 16 Beta 1 測試版。PG 16 優化了邏輯複寫功能,讓開發者能從備援資料庫(Stand By)進行邏輯複寫,同時也支援平行處理大量資料交易,從而提高效能。
本次研討會將介紹 SSL 連線機制,如何在 Postgres 資料庫設置 SSL 連線保障資料傳輸的安全性;以及 EDB 企業版進階的安全性功能,例如資料庫的使用稽核紀錄、資料遮碼(避免開發時暴露敏感資訊)、Stored Procedure 的程式遮碼、以及密碼安全性與權限的管控方式。
PostgreSQL 15 針對 auto_explain 功能做了大幅度的改善,本文介紹如何讓普通帳號也能使用 auto_explain,並使用圖形化工具查看 SQL 執行計畫。
KT公司採用Postgres的代表之一,將大型專有資料庫的資料遷移作為一項新標準。該公司也積極將其硬體基於RISC架構的Unix移轉到x86的Linux,為其雲端基礎設施,充分利用HP x86標準架構的靈活性、節省成本和高效能。部署的解決方案,以支持預購系統結合開源基礎架設軟體及EnterpriseDB的Postgres Plus Advanced Server。
EDB Postgres Advanced Server 9.6 (EPAS 9.6),基於 PostgreSQL 9.6,善用 CPU 多核心功能,以平行查詢大幅增加單一表格查詢速度;並大幅增加橫向擴充能力,隨著大數據潮流一同演進。
開源資料庫 PostgreSQL 在最新的第 10 版中增加內建的邏輯複寫功能。過往藉由串流複寫只能達到全資料庫主從高可用;如今透過新導入的邏輯複寫,不僅可以跨平台同步資料,進行表格層級的資料同步,同步中斷後更可以自動追溯缺失的部份,保持資料的同步狀態,大幅提昇佈署靈活性。
本體驗營將深入淺出地介紹EDB Postgres進階版及帶您嘗鮮體驗 PostgreSQL 12的新功能「備份還原與串流同步」,誠摯邀請廣大的客戶及合作夥伴和我們一起一同深入了解EDB Postgres Advanced Server。
Postgres 受開發者青睞這事無人不曉,事實上,這些對 Postgres 的熱愛儼然成為企業選擇 Postgres 的主要動機之一,因為那些諸如 Oracle 的傳統封閉性資料庫欠缺打造現代化應用程式所需的靈活性、可靠性和創新的潛力。
最精彩的 Postgres V…
以下參考 Postgres 10 Partitioned Table 原生語法範例與 EDB 10 企業版範例,分別建立 Partitioned Table。然後查詢 Postgres 10 新增的原生系統表與企業版的 Oracle 相容 Data Dictionary。
首先是利用 EDB 10 企業版語法建立 Partitioned Table,然後分別查找原生 Partitioned Table 系統表 pg_partitioned_table 與企業版的 ALL_PART_TABLES
在多方考慮後, IKEA 捨去過去的大型關聯式資料庫( Oracle、Microsoft SQL Server ),將資料策略轉向到使用專門化資料庫 Postgres,使得資料庫可以更貼近資料需求。
EPAS 不僅以與 Oracle 資料庫有高兼容度聞名,還在降低優化批次程式成本方面為人所知。由於選用典型批次程序和驗證 Oracle 資料庫與 EDB 之間的兼容性,我們發現超過一半的程式不需優化即可遷移至 EDB。
Oracle 到 Postgres 的遷移被劃分為 5 個步驟或階段:資料庫評估、Schema 轉移、功能測試、效能測試和資料遷移。本文將對 Oracle 至 Postgres 的 Schema 轉移進行詳細的講解。
本次研討會將會介紹 EDB 15 新增的 TDE 結合 SSL,組合使用兩種安全措施來保護敏感資料,以達到更高的安全性,講師會概述 TDE 和 SSL 的基本概念與應用場景,以及如何在 EDB15 資料庫中實作 TDE 和 SSL。