如何將數據從SQL Server 遷移到PostgreSQL?將數據從SQL Server 遷移到PostgreSQL方法分析!


在不同類型的數據庫之間遷移數據並非易事。在本文中,我們將比較幾種從 SQL Server 轉換到 PostgreSQL 的方法。Microsoft SQL Server 是一個很棒的數據庫引擎,但在某些情況下它有缺點。免費的 Microsoft SQL Server Express 可以成功用於小型數據庫。

SQL Server Express 的限制:

  • 數據庫引擎使用的最大內存為 1GB。
  • 10GB 最大數據庫大小。
  • 1MB 最大緩沖區緩存。
  • CPU 使用一 (1) 個插槽或四 (4) 個內核中的較小者(SQL 用戶連接數不受限制)。

對於大型數據庫,您可能需要從標准版許可證開始獲取 MSSQL Server 的付費版本。SQL Server 的成本取決於用戶數量和數據庫的大小。

如果您甚至買不起標准的 SQL Server 許可證,PostgreSQL 是一個替代方案。

PostgreSQL 是完全免費的,因此許可證成本是 PostgreSQL 相對於 Microsoft SQL Server 的主要優勢。

 

SQL Server 和 PostgreSQL 之間數據庫遷移的開源工具


手動數據遷移很麻煩。一個好的數據庫遷移工具應該提示用戶選擇要遷移的對象,例如表、索引、主鍵和外鍵約束。

幸運的是,有一些工具可以自動化枯燥的手工工作。

1、pgloader 是 一個著名的開源工具,它使用COPY命令將SQL Server中的數據導入PostgreSQL,加載數據、索引和外鍵,並按預期將數據轉換為PostgreSQL。

  1. pgloader 將來自 MS SQL、SQLite、MySQL、CSV 等各種來源的數據加載到 PostgreSQL 中。
  2. 它在 PostgreSQL 許可下獲得許可,可以免費使用。
  3. pgloader 是一個跨平台的軟件。
  4. Docker 鏡像可用。

2. Sqlserver2pgsql是用Perl 編寫的。這是另一個開源遷移工具,用於自動將 Microsoft SQL Server 數據庫轉換為 PostgreSQL 數據庫。

  1. 它將 SQL Server 模式轉換為 PostgreSQL 模式
  2. 如果需要,它可以創建一個 Pentaho Data Integrator (Kettle) 控制台來將所有數據從 SQL Server 遷移到 PostgreSQL。

部分開源工具的缺點


  • 上面提到的工具是命令行實用程序,因此它們沒有圖形界面。對於那些被終端嚇倒的人來說,它們並不好用。
  • 這些工具僅限於可以將 PostgreSQL 配置為目的地的單向遷移

DBConvert 數據庫遷移軟件


適用於 SQL Server 和 PostgreSQL 的 DBConvert 和 DBSync 是流行的軟件工具,可最大限度地減少 SQL Server 和 PostgreSQL 數據庫之間的數據庫轉換和同步挑戰。

 

 

用於 SQL Server 和 PostgreSQL 的 DBConvert/DBSync 優點:

  1. DBConvert 工具是高度可定制的,允許您使用全面的圖形界面快速輕松地將數據從 Microsoft SQL Server 導出到 Postgres。DBConvert Applications 指導您完成幾個步驟,從連接到源和目標數據庫、配置遷移參數以及安排后續運行。
  2. 在 DBConvert 產品中,目標數據庫以樹的形式呈現,這大大簡化了設置的配置。DBConvert 軟件經過驗證的優勢在於,非專業用戶也可以有效地使用它。
  3. 自動驗證系統會在遷移前仔細檢查源數據庫的結構和關系,確保不會丟失或損壞您的任何數據,並保證無風險和無錯誤的數據傳輸。
  4. 將源數據庫復制到目標數據庫后,使數據庫與更新、插入和刪除同步功能保持同步。
  5. DBSync 應用程序在 SQL Server 和 PostgreSQL 之間執行雙向復制(其中兩個不同的數據庫同時相互復制更改)。
  6. 在任何組合中, 使用 SQL Server 到 PostgreSQL 轉換器/同步工具,以下數據庫之間的數據遷移是可能的:
  • 微軟 SQL 服務器,
  • Windows Azure SQL 數據庫/ Azure SQL 數據倉庫,
  • 適用於 SQL Server 的 Google Cloud SQL,
  • 用於 PostgreSQL 的 Google Cloud SQL,
  • AWS RDS/極光,
  • Heroku Postgres。

結論:

在本文中,我們介紹了將數據從 SQL Server 遷移到 PostgreSQL 的幾種方法。

Pgloader和Sqlserver2pgsql是 Linux 用戶和那些在終端中感覺舒適的優秀解決方案。它在從許多數據庫遷移到 PostgreSQL 時發揮作用。但只能在一個方向上進行轉換。

DBConvert 工具支持 SQL Server 和PostgreSQL 數據庫類型之間的雙向遷移和同步。支持更多本地和雲數據庫轉換。DBSync 是在初始遷移后持續保持數據庫同步的完美解決方案。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM