本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Aurora DSQL 不支援的 PostgreSQL 功能
Aurora DSQL 與 PostgreSQL 相容。這表示 Aurora DSQL 支援核心關聯式功能,例如 ACID 交易、次要索引、聯結、插入和更新。如需支援的 SQL 功能概觀,請參閱支援的 SQL 運算式。
下列各節重點說明 Aurora DSQL 目前不支援哪些 PostgreSQL 功能。
不支援的物件
Aurora DSQL 不支援的物件包括下列項目:
-
單一 Aurora DSQL 叢集上的多個資料庫
-
暫時資料表
-
觸發
-
類型 (部分支援)
-
資料表空間
-
以非 SQL 語言撰寫的函數
-
序列
-
分區
不支援的限制條件
-
外部索引鍵
-
排除限制
不支援的命令
-
ALTER SYSTEM -
TRUNCATE -
SAVEPOINT -
VACUUM注意
Aurora DSQL 不需要清空。系統會維護統計資料並自動進行儲存最佳化管理,無需手動清空命令。
不支援的擴充功能
Aurora DSQL 不支援 PostgreSQL 擴充功能。下表顯示不支援的擴充功能:
-
PL/pgSQL -
PostGIS -
PGVector -
PGAudit -
Postgres_FDW -
PGCron -
pg_stat_statements
不支援的 SQL 運算式
下表說明 Aurora DSQL 不支援的子句。
| 類別 | 主要子句 | 不支援的子句 |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
系統會封鎖所有 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
您無法建立其他資料庫。 |
1 若要在指定資料表的資料欄上建立索引,請參閱 Aurora DSQL 的非同步索引。
Aurora DSQL 的 PostgreSQL 相容性考量
使用 Aurora DSQL 時,請考慮下列相容性限制。如需一般考量,請參閱 使用 Amazon Aurora DSQL 的考量事項。如需了解配額和限制,請參閱 Amazon Aurora DSQL 中的叢集配額與資料庫限制。
-
Aurora DSQL 使用名為
postgres的單一內建資料庫。您無法建立其他資料庫,也無法重新命名或捨棄postgres資料庫。 -
postgres資料庫使用 UTF-8 字元編碼。您無法變更伺服器編碼。 -
資料庫只會使用
C定序。 -
Aurora DSQL 以
UTC作為系統時區。Postgres 會將所有時區感知日期和時間儲存在 UTC 內部。您可以設定TimeZone組態參數來轉換用戶端的顯示方式,並做為伺服器將用來在內部轉換為 UTC 的用戶端輸入預設值。 -
交易隔離層級固定為 PostgreSQL
Repeatable Read。 -
交易有下列限制:
-
交易無法混合 DDL 和 DML 操作
-
交易只能包含 1 個 DDL 陳述式
-
無論次要索引的數量為何,交易最多可以修改 3,000 個資料列
-
3,000 個資料列的限制適用於所有 DML 陳述式 (
INSERT、UPDATE、DELETE)
-
-
資料庫連線會在 1 小時後逾時。
-
Aurora DSQL 目前不允許您執行
GRANT [permission] ON DATABASE。如果您嘗試執行該陳述式,Aurora DSQL 會傳回錯誤訊息ERROR: unsupported object type in GRANT。 -
Aurora DSQL 不允許非管理員使用者角色執行
CREATE SCHEMA命令。您無法執行GRANT [permission] on DATABASE命令並授予資料庫的CREATE許可。如果非管理員使用者角色嘗試建立結構描述,Aurora DSQL 會傳回錯誤訊息ERROR: permission denied for database postgres。 -
非管理員使用者無法在公有結構描述中建立物件。只有管理員使用者可以在公有結構描述中建立物件。管理員使用者角色有權將這些物件的讀取、寫入和修改存取權授予非管理員使用者,但無法授予公有結構描述本身的
CREATE許可。非管理員使用者必須以使用者建立的不同結構描述來建立物件。 -
Aurora DSQL 不支援命令
ALTER ROLE [] CONNECTION LIMIT。如果您需要提高連線限制,請聯絡 AWS 支援。 -
Aurora DSQL 不支援 asyncpg (適用於 Python 的非同步 PostgreSQL 資料庫驅動程式)。