本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Aurora DSQL 問題故障診斷
注意
下列主題提供在使用 Aurora DSQL 時,針對可能發生的錯誤與問題之故障排除建議。若您發現此處未列出的問題,請聯絡 AWS 支援團隊。
連線錯誤故障排除
錯誤:無法辨識的 SSL 錯誤代碼:6 或無法接受連線,未收到 SNI
您可能使用的 psql 版本早於 14 版
您可以使用 psql --version 檢查用戶端版本。
錯誤:NetworkUnreachable
連線嘗試期間出現的 NetworkUnreachable 錯誤可能表示您的用戶端不支援 IPv6 連線,而非真正的網路問題。此錯誤通常發生於僅支援 IPv4 的執行個體,原因在於 PostgreSQL 用戶端處理雙堆疊連線的方式。當伺服器支援雙堆疊模式時,用戶端會先將主機名稱解析為 IPv4 與 IPv6 位址。用戶端會先嘗試 IPv4 連線,若初始連線失敗再改用 IPv6。若系統不支援 IPv6,畫面將顯示一般性 NetworkUnreachable 錯誤,而非明確的「IPv6 不支援」訊息。
身分驗證錯誤故障排除
使用者 "..." 的 IAM 身分驗證失敗
產生 Aurora DSQL IAM 驗證權杖時,可設定的最長有效期為 1 週。一週後,該權杖將失效,無法再用於身分驗證。
此外,若您所假設的角色已過期,Aurora DSQL 將拒絕您的連線請求。例如,即使驗證權杖仍有效,若您使用臨時 IAM 角色嘗試連線,Aurora DSQL 仍會拒絕請求。
若要深入了解 IAM 與 Aurora DSQL 的整合機制,請參閱了解 Aurora DSQL 的身分驗證與授權及 Aurora DSQL 中的AWS Identity and Access Management。
呼叫 GetObject 操作時發生錯誤 (InvalidAccessKeyId):您提供的 AWS 存取金鑰 ID 不存在於我們的記錄中
IAM 拒絕了您的請求。如需詳細資訊,請參閱為什麼要簽署請求。
IAM 角色 <role> 不存在
Aurora DSQL 找不到您的 IAM 角色。如需詳細資訊,請參閱 IAM 角色。
IAM 角色必須符合 IAM ARN 格式
如需詳細資訊,請參閱 IAM 識別碼 - IAM ARN。
授權錯誤故障排除
角色 <role> 不受支援
Aurora DSQL 不支援 GRANT 操作。請參閱 Aurora DSQL 中支援的 PostgreSQL 指令子集。
無法使用角色 <role> 建立信任
Aurora DSQL 不支援 GRANT 操作。請參閱 Aurora DSQL 中支援的 PostgreSQL 指令子集。
角色 <role> 不存在
Aurora DSQL 找不到指定的資料庫使用者帳號。請參閱授權自訂資料庫角色以連線至叢集。
錯誤:拒絕以角色 <role> 授予 IAM 信任的權限
若要授與資料庫角色存取權限,您必須以管理員角色連線至叢集。若要進一步了解,請參閱授權資料庫角色以在資料庫中使用 SQL。
錯誤:角色 <role> 必須具有 LOGIN 屬性
您建立的任何資料庫角色都必須具有 LOGIN 權限。
若要解決此錯誤,請確定您已建立具備 LOGIN 權限的 PostgreSQL 角色。如需詳細資訊,請參閱 PostgreSQL 文件中的 CREATE ROLE
錯誤:無法刪除角色 <role>,因為部分物件仍依賴該角色
如果您刪除具有 IAM 關聯的資料庫角色,Aurora DSQL 會傳回錯誤,直到您使用 AWS IAM REVOKE 撤銷關聯為止。若要深入了解,請參閱撤銷授權。
SQL 錯誤疑難排解
錯誤:不支援的查詢
Aurora DSQL 並未支援所有以 PostgreSQL 為基礎的方言。若要了解支援項目,請參閱 Aurora DSQL 所支援的 PostgreSQL 功能。
錯誤:請改用 CREATE INDEX ASYNC 替代。
若要在包含現有資料列的資料表上建立索引,您必須使用 CREATE INDEX
ASYNC 指令。若要進一步了解,請參閱在 Aurora DSQL 中非同步建立索引。
OCC 錯誤疑難排解
OC000「錯誤:變更與另一筆交易發生衝突,請視需要重試」
此交易嘗試修改與另一個並行交易相同的元組。這表示修改後的元組出現爭用。若要進一步了解,請參閱 Aurora DSQL 中的並行控制
OC001「錯誤:結構描述已被另一筆交易更新,請視需要重試」
您的 PostgreSQL 工作階段中含有結構描述目錄的快取副本。該快取副本在載入時是有效的。我們將該時間稱為 T1,版本稱為 V1。
另一筆交易在時間 T2 更新目錄。我們將此版本稱為 V2。
當原始工作階段在時間 T2 嘗試從儲存體讀取資料時,仍使用目錄版本 V1。Aurora DSQL 的儲存層會拒絕該請求,因為時間 T2 的最新目錄版本為 V2。
當您在原始工作階段於時間 T3 重新嘗試時,Aurora DSQL 會更新目錄快取。時間 T3 的交易使用目錄版本 V2。只要自時間 T2 以來未發生其他目錄變更,Aurora DSQL 即可完成該交易。
SSL/TLS 連線疑難排解
SSL 錯誤:憑證驗證失敗
此錯誤表示用戶端無法驗證伺服器憑證的有效性。請確認以下事項:
-
Amazon 根 CA 1 憑證已正確安裝。如需驗證與安裝此憑證的相關步驟,請參閱 為 Aurora DSQL 連線設定 SSL/TLS 憑證。
-
PGSSLROOTCERT環境變數應指向正確的憑證檔案。 -
憑證檔案已設定正確的權限。
無法識別的 SSL 錯誤碼:6
PostgreSQL 用戶端版本低於 14 時,會出現此錯誤。將 PostgreSQL 用戶端升級至版本 17 以解決此問題。
SSL 錯誤:未註冊的通訊協定 (Windows)
這是 Windows psql 用戶端在使用系統憑證時的已知問題。請依 從 Windows 進行連線 說明中的指示,使用下載憑證檔案的方法。