本文介紹如何設置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語句超時時間的數據庫賬號。
文檔內容是否對您有幫助?