使用 PostgreSQL 資料庫做為來源的已知限制包括:
pglogical
擴充功能不支援 PostgreSQL 12 以上版本的產生資料欄複製作業。表格結構 (DDL) 的變更不會透過標準 DDL 指令複製,而是透過使用用於複製的
pglogical
擴充功能執行的指令複製。包括 對enum
類型的變更。舉例來說,
pglogical
提供函式pglogical.replicate_ddl_command
,可在來源資料庫和複本上執行 DDL,且時間點一致。在來源上執行此指令的使用者必須已在副本上存在。如要複製新資料表的資料,您必須使用
pglogical.replication_set_add_table
指令將新資料表新增至現有的複製組合。如要進一步瞭解在遷移期間進行 DDL 複製作業,請參閱「遷移準確度」一節。
如果資料表沒有主鍵,資料庫移轉服務支援在變更資料擷取 (CDC) 階段遷移初始快照和
INSERT
陳述式。您應手動遷移UPDATE
和DELETE
陳述式。資料庫移轉服務不會遷移物化檢視畫面中的資料,只會遷移檢視畫面結構定義。如要填入檢視畫面,請執行下列指令:
REFRESH MATERIALIZED VIEW view_name
。新 AlloyDB 目的地的
SEQUENCE
狀態 (例如last_value
) 可能與來源SEQUENCE
狀態不同。UNLOGGED
和TEMPORARY
資料表不會複製,也無法複製。不支援大型物件資料類型。詳情請參閱「遷移精確度」一節。
- 只有 AlloyDB 支援的 PostgreSQL 擴充功能和程序語言可以遷移。
資料庫移轉服務不支援從處於復原模式的讀取備用資料庫進行遷移。
資料庫移轉服務不支援已套用 AWS SCT 擴充功能包的 Amazon RDS 來源。
- 您無法遷移以 C 編寫的使用者定義函式,但如果您在安裝 AlloyDB 支援的擴充功能時,在 PostgreSQL 資料庫中安裝的函式除外。
如果來源資料庫中存在其他擴充功能和程序設計語言,或是系統不支援這些語言的版本,則測試或啟動遷移工作時會失敗。
系統不會遷移在遷移工作開始後新增的資料庫。
- 使用資料庫移轉服務遷移資料時,您無法選取特定資料表或結構定義。資料庫移轉服務會遷移所有資料表和結構定義,但下列資料表和結構定義除外:
- 資訊結構定義 (
information_schema
)。 - 開頭為
pg
的任何資料表,例如pg_catalog
。如需pg
開頭的 PostgreSQL 目錄完整清單,請參閱 PostgreSQL 說明文件中的 PostgreSQL 系統目錄。 - 使用者和使用者角色的相關資訊未遷移。
- 資訊結構定義 (
如果加密資料庫需要客戶自行管理的加密金鑰才能解密,而資料庫移轉服務無法存取這些金鑰,則無法遷移資料庫。
不過,如果客戶資料已由
pgcrypto
擴充功能加密,則可透過資料庫移轉服務遷移資料 (因為 AlloyDB 支援該擴充功能)。資料庫移轉服務也支援從加密的 Amazon Aurora 或 Amazon RDS 資料庫遷移資料,因為這些資料庫會在服務中透明地處理解密作業。詳情請參閱「加密 Amazon Aurora 資源」和「加密 Amazon RDS 資源」。
在遷移期間,目的地 AlloyDB 資料庫可供寫入,以便視需要套用 DDL 變更。請注意,請勿變更資料庫設定或表格結構,否則可能會導致遷移程序中斷或影響資料完整性。
觸發事件的行為取決於設定方式。預設行為是不會觸發,但如果使用
ALTER EVENT TRIGGER
或ALTER TABLE
陳述式進行設定,且觸發狀態設為複本或一律,則會在複製期間在複本上觸發。alloydbexternalsync
會在 AlloyDB 主要資料來源中建立含有安全性定義器的函式。當任何使用者執行時,系統會以alloydbexternalsync
的權限執行,該權限具有alloydbsuperuser
和alloydbreplica
角色。建議您將安全性定義器函式限制為僅供部分使用者使用。為此,使用者應撤銷預設的「公開」權限,然後有選擇地授予執行權限。
遷移至現有目標叢集的限制
- 現有的目的地叢集必須為空白,或僅包含系統設定資料。系統不支援遷移至含有使用者資料 (例如資料表) 的現有目的地叢集。
- 每個目的地叢集只能設定一個遷移工作。
- 系統不支援遷移至含有次要叢集的叢集。
- 支援遷移至含有讀取集區執行個體的叢集。
如要進一步瞭解 AlloyDB for PostgreSQL 叢集和執行個體,請參閱 AlloyDB for PostgreSQL 簡介。
配額
- 無論何時均可存在多達 2,000 個連線設定檔和 1,000 個遷移工作。如要建立更多空間,可以刪除遷移工作 (包含已完成的工作) 和連線設定檔。