限制和考慮事項
您在使用 PostgreSQL 來源時應注意下列限制和考慮事項:
所有資料任務的限制和考慮事項
- 資料庫名稱不能包含分號 (;)。
- 不支援資料庫在 Hot Standby 模式時擷取變更。
-
要從次要資料庫擷取變更,必須在資料庫上組態讀取/寫入特權。由於寫入權限要求,PostgreSQL 讀取複製 (在高可用環境) 不支援。
如需有關讀寫權限的資訊,請參閱 從客戶安裝的 PostgreSQL 資料庫擷取變更。
- 移動 個多重表格有相同名稱,但有不同大小寫(如:table1、TABLE1和Table1)可能會導致不可預測的行為,因此不支援。
- 不支援變更 TRUNCATE 操作程序。
- 不支援延後限制。
-
僅支援 Replica 指示的預設組態。
進一步了解 Replica 指示的資訊,請參閱 https://www.postgresql.org/docs/10/logical-replication-publication.html
-
不支援有 CASE 運算式的獨特索引。
僅登陸任務的限制和考慮事項
- 不支援分割的表格。
- 強制容錯移轉是適用於 PostgreSQL 的 Azure 資料庫 – 彈性伺服器的的功能。若在從適用於 PostgreSQL 的 Azure 資料庫 – 彈性伺服器 移動 資料時發生強制容錯移轉,任務將會停止,資料集將需要重新建立。
僅複寫任務的限制和考慮事項
- 來源表格和相對應目標表個必須有清晰可辨的主要金鑰。如果其中一個表格沒有主要金鑰,刪除和更新記錄操作的結果將不可預測。
- 不支援「從時間戳記開始程序變更」運作選項。
- 不支援 移動 的Before Image 。
-
支援變更 [CREATE | ALTER | DROP] 表格 DDL 程序,除非這些表格保留在內部功能/程序體區塊或在其他巢狀結構體中。
舉例來說,將不會擷取以下變更:
CREATE OR REPLACE FUNCTION attu.create_distributors1() RETURNS void
LANGUAGE plpgsql
AS $$
BEGIN
create table attu.distributors1(did serial PRIMARY KEY,name varchar(40) NOT NULL);
END;
$$;
擷取對來源表格的變更時,只有在先進行 DML 操作時,才會擷取 RENAME TABLE (重新命名表格) 操作。
不支援 PostGIS 資料類型。
強制容錯移轉是適用於 PostgreSQL 的 Azure 資料庫 – 彈性伺服器的的功能。若在從適用於 PostgreSQL 的 Azure 資料庫 – 彈性伺服器 移動 資料時發生強制容錯移轉,任務將會停止並將需要載入。
PostgreSQL 15.x 中採用的 SQL MERGE 命令未經認證。
不支援的資料類型
不支援以下資料類型:
-
PostGIS
- INT4MULTIRANGE
- INT8MULTIRANGE
- NUMMULTIRANGE
- TSMULTIRANGE