本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
postgres_get_av_diag()
函數會擷取自動清空程序的診斷資訊,這些程序在 RDS for PostgreSQL 資料庫中會封鎖或落後。查詢需要在具有最舊交易 ID 的資料庫中執行,以獲得準確的結果。如需使用具有最舊交易 ID 的資料庫的詳細資訊,請參閱未連線至具有最舊交易 ID 的資料庫
SELECT
blocker,
DATABASE,
blocker_identifier,
wait_event,
TO_CHAR(autovacuum_lagging_by, 'FM9,999,999,999') AS autovacuum_lagging_by,
suggestion,
suggested_action
FROM (
SELECT
*
FROM
rds_tools.postgres_get_av_diag ()
ORDER BY
autovacuum_lagging_by DESC) q;
postgres_get_av_diag()
函數會傳回包含下列資訊的資料表:
- 封鎖程式
-
指定封鎖清空的資料庫活動類別。
- database
-
指定適用且支援的資料庫名稱。這是活動正在進行並封鎖或將封鎖自動清空的資料庫。這是您需要連線並採取動作的資料庫。
- blocker_identifier
-
指定封鎖或將封鎖自動清空之活動的識別符。識別符可以是程序 ID 以及SQL陳述式、準備好的交易、僅供讀取複本的 IP 地址,以及複寫槽的名稱,可以是邏輯或實體。
- wait_event
-
指定封鎖工作階段的等待事件,並適用於下列封鎖程式:
-
作用中陳述式
-
交易閒置
-
- autovacum_lagging_by
-
指定自動清空在每個類別的待處理項目工作中落後的交易數量。
- 建議
-
指定解析封鎖程式的建議。這些指示包括適用時活動所在的資料庫名稱、適用時工作階段的程序 ID (PID),以及要採取的動作。
- recommended_action
-
建議解決封鎖程式所需的動作。