本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 中使用 PostgreSQL 資料庫做為同質資料遷移的目標 AWS DMS
您可以使用 PostgreSQL 資料庫做為同質資料遷移的目標 AWS DMS。
AWS DMS 需要特定許可,才能將資料遷移到目標 Amazon RDS for PostgreSQL 或 Amazon Aurora PostgreSQL 資料庫。使用下列指令碼,在您的 PostgreSQL 目標資料庫中建立具有所需許可的資料庫使用者。
CREATE USER
your_user
WITH LOGIN PASSWORD 'your_password
'; GRANT USAGE ON SCHEMAschema_name
TOyour_user
; GRANT CONNECT ON DATABASEdb_name
toyour_user
; GRANT CREATE ON DATABASEdb_name
TOyour_user
; GRANT CREATE ON SCHEMAschema_name
TOyour_user
; GRANT UPDATE, INSERT, SELECT, DELETE, TRUNCATE ON ALL TABLES IN SCHEMAschema_name
TOyour_user
; #For "Full load and change data capture (CDC)" and "Change data capture (CDC)" data migrations, setting up logical replication requires rds_superuser privileges GRANT rds_superuser TOyour_user
;
在上述範例中,將每個 取代user input placeholder
為您自己的資訊。
若要為 RDS for PostgreSQL 目標開啟邏輯複寫,請將資料庫rds.logical_replication
參數群組中的 參數設定為 1。此靜態參數需要重新啟動資料庫執行個體或資料庫叢集才會生效。某些參數是靜態的,您只能在伺服器 start. AWS DMS ignores 中設定它們,直到您重新啟動伺服器為止,它們在資料庫參數群組中的項目變更。
PostgreSQL 使用觸發來實作外部金鑰限制。在完整載入階段期間, 會一次 AWS DMS 載入一個資料表。建議您在完全載入期間關閉目標資料庫上的外來索引鍵限制。若要這麼做,請使用下列其中一個方法:
暫時關閉執行個體的所有觸發條件,並完成完全載入。
在 Postgre 中變更
session_replication_role
參數的值SQL。在任何指定的時間,觸發可為下列狀態之一:
origin
、replica
、always
或disabled
。當您將session_replication_role
參數設定為replica
時,只有處於replica
狀態的觸發程序會保持作用中。否則,觸發會保持非作用中。
使用 PostgreSQL 相容資料庫做為同質資料遷移目標的限制
使用 PostgreSQL 相容資料庫做為同質資料遷移的目標時,適用下列限制:
用於連線到資料來源的使用者名稱具有以下限制:
長度可有 2 到 64 個字元。
不能有空格。
可以包含以下字元:a-z、A-Z、0-9 和底線 (_)。
必須以 a-z 或 A-Z 開頭。
您用來連線到資料來源的密碼具有以下限制:
長度可有 1 到 128 個字元。
不能包含下列任何項目:單引號 (')、雙引號 (「)、分號 (;) 或空格。