本文介紹如何設定AnalyticDB PostgreSQL版執行個體的SQL逾時時間。
問題描述
SQL執行超過3小時後失敗了,返回了如下報錯資訊:
ERROR: canceling statement due to statement timeoutTime: 10801445.540 ms (03:00:01.446)問題原因
AnalyticDB PostgreSQL版的預設SQL逾時時間為3小時,超過3小時的SQL將被終止。
解決方案
AnalyticDB PostgreSQL版提供了statement_timeout參數,用於修改SQL逾時時間。您可以使用如下兩種方式修改statement_timeout參數值:
方式一:通過控制台修改(執行個體層級):
在控制台左上方,選擇執行個體所在地區。
找到目標執行個體,單擊執行個體ID。
在左側導覽列中,單擊參數配置。
在參數配置頁面,找到statement_timeout參數,單擊運行值列的
表徵圖。輸入目標參數值。
取值範圍為0~2147483647。
0表示關閉SQL逾時功能。
單位為毫秒(ms)。
說明建議SQL逾時時間大於1分鐘(60000毫秒),避免SQL逾時時間對其它任務產生影響。
單擊確定。
單擊頁面右上方的提交。
在參數修改對話方塊中,單擊確定。
方式二:通過SQL語句修改。
會話層級:
SET statement_timeout = 0;使用者層級:
ALTER ROLE <username> SET statement_timeout TO 600000;說明請將
username替換成需要設定SQL語句逾時時間的資料庫帳號。