使用 Microsoft Azure Database for PostgreSQL 彈性資料庫作為 AWS DMS 的來源 - AWS Database Migration Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Microsoft Azure Database for PostgreSQL 彈性資料庫作為 AWS DMS 的來源

您可以透過 AWS DMS,方式大致上就與使用 PostgreSQL 相同,使用 Microsoft Azure Database for PostgreSQL 彈性伺服器作為來源。

如需 AWS DMS 支援作為來源之 Microsoft Azure Database for PostgreSQL 彈性伺服器的版本資訊,請參閱 資料來源 AWS DMS

設定 Microsoft Azure for PostgreSQL 彈性伺服器,以進行邏輯複寫和解碼

您可以在資料庫遷移期間,在 Microsoft Azure Database for PostgreSQL 彈性伺服器中使用邏輯複寫和解碼功能。

如需邏輯解碼,DMS 會使用 test_decodingpglogical 外掛程式。如果 pglogical 外掛程式在來源 PostgreSQL 資料庫上是可用的狀態,則 DMS 會使用 pglogical 建立複寫槽,否則會使用 test_decoding 外掛程式。

若要將 Microsoft Azure for PostgreSQL 彈性伺服器設為 DMS 的來源端點,請執行下列步驟:

  1. 開啟入口網站上的伺服器參數頁面。

  2. wal_level 伺服器參數設為 LOGICAL

  3. 如果您要使用 pglogical 擴充功能,請將 shared_preload_librariesazure.extensions 參數設為 pglogical

  4. max_replication_slots 參數設為您計劃同時執行的 DMS 任務數目上限。在 Microsoft Azure 中,此參數的預設值為 10。此參數的最大值取決於 PostgreSQL 執行個體的可用記憶體,允許每 GB 記憶體介於 2 到 8 個複寫槽。

  5. max_wal_senders 參數設為大於 1 的值。max_wal_senders 參數設定可以同時執行的任務數量。預設值為 10。

  6. max_worker_processes 參數值設定為至少 16。否則,您可能會看到以下錯誤:

    WARNING: out of background worker slots.
  7. 儲存變更。重新啟動伺服器以套用變更。

  8. 確認 PostgreSQL 執行個體允許來自連線資源的網路流量。

  9. 使用下列命令,授予現有使用者複寫許可,或建立具有複寫許可的新使用者。

    • 使用下列命令授予現有使用者複寫許可:

      ALTER USER <existing_user> WITH REPLICATION;
    • 使用下列命令建立具有複寫許可的新使用者:

      CREATE USER aws_dms_user PASSWORD 'aws_dms_user_password'; GRANT azure_pg_admin to aws_dms_user; ALTER ROLE aws_dms_user REPLICATION LOGIN;

如需使用 PostgreSQL 進行邏輯複寫的詳細資訊,請參閱以下主題: