使用 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器的疑難解答指南
適用於: 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器
在本文中,您將瞭解如何從 Azure 入口網站 使用 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器的疑難解答指南。 若要深入瞭解疑難解答指南,請參閱概 觀。
必要條件
若要有效地針對特定問題進行疑難解答,您必須確定您已具備所有必要的數據。 每個疑難解答指南都需要一組特定的數據,其來源為三個不同的功能:診斷設定、查詢存放區 和增強型計量。 所有疑難解答指南都需要將記錄傳送至 Log Analytics 工作區,但要擷取的特定記錄類別可能會因特定指南而異。
請遵循設定和存取記錄 - 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器中所述的步驟來設定診斷設定,並將記錄傳送至 Log Analytics 工作區。
查詢存放區,以及透過伺服器參數設定增強的計量。 請遵循 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器文章中針對 Azure 入口網站 或 Azure CLI 設定伺服器參數中所述的步驟。
下表提供每個疑難解答指南所需的記錄類別資訊,以及必要的 查詢存放區、增強的計量和伺服器參數必要條件。
疑難排解指南 | 診斷設定記錄類別和計量 | 查詢存放區 | 增強型計量 | 伺服器參數 |
---|---|---|---|---|
CPU | PostgreSQL 伺服器記錄 PostgreSQL 伺服器會話數據 PostgreSQL Server 查詢存放區 Runtime AllMetrics |
pg_qs.query_capture_mode 至 TOP 或 ALL | metrics.collector_database_activity | N/A |
記憶體 | PostgreSQL 伺服器記錄 PostgreSQL 伺服器會話數據 PostgreSQL Server 查詢存放區 Runtime |
pg_qs.query_capture_mode 至 TOP 或 ALL | metrics.collector_database_activity | N/A |
IOPS | PostgreSQL Server 查詢存放區 Runtime PostgreSQL 伺服器記錄 PostgreSQL 伺服器會話數據 PostgreSQL Server 查詢存放區 Wait Statistics |
pg_qs.query_capture_mode 至 TOP 或 ALL pgms_wait_sampling.query_capture_mode 至 ALL |
metrics.collector_database_activity | track_io_timing至 ON |
暫存檔案 | PostgreSQL 伺服器會話數據 PostgreSQL Server 查詢存放區 Runtime PostgreSQL Server 查詢存放區 Wait Statistics |
pg_qs.query_capture_mode 至 TOP 或 ALL pgms_wait_sampling.query_capture_mode 至 ALL |
metrics.collector_database_activity | N/A |
自動資料清理監視 | PostgreSQL 伺服器記錄 PostgreSQL Autovacuum 和架構統計數據 PostgreSQL 剩餘交易 |
N/A | N/A | log_autovacuum_min_duration |
自動資料清理封鎖程式 | PostgreSQL 伺服器會話數據 PostgreSQL 剩餘交易 |
N/A | N/A | 無法使用 |
注意
請注意,如果您最近啟用診斷設定、查詢存放區、增強型計量或伺服器參數,可能需要一些時間才能填入數據。 此外,如果在某個時間範圍內沒有資料庫上的活動,圖表可能會顯示為空白。 在這種情況下,請嘗試變更時間範圍以擷取相關數據。 請耐心,並允許系統收集和顯示必要數據,再繼續進行疑難解答工作。
使用疑難解答指南
若要使用疑難解答指南,請遵循下列步驟:
開啟 Azure 入口網站,尋找您想要檢查的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體。
從左側功能表的 [監視] 區段底下,選取 [疑難解答指南]。
瀏覽至頁面頂端,您可以在其中找到一系列索引標籤,每個索引標籤都代表您可能想要解決的六個問題之一。 按兩下相關的索引標籤。
選取您想要分析的時間週期。
遵循指南所提供的逐步指示。 請密切關注疑難解答步驟中繪製的圖表和數據視覺效果,因為它們可協助您識別任何不明確或異常狀況。 使用這項資訊有效地診斷並解決手邊的問題。
擷取查詢存放區所收集查詢的文字
基於隱私權考慮,某些資訊,例如查詢文字和用戶名稱可能不會顯示在 Azure 入口網站 內。
若要擷取查詢存放區所收集之查詢的文字,您必須登入 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。
使用您選擇的 PostgreSQL 用戶端,存取 azure_sys
儲存查詢存放區數據的資料庫。
聯機之後,請查詢 query_store.query_texts_view view
以擷取所需的查詢文字。
擷取使用者或角色的名稱
基於隱私權考慮,Azure 入口網站 會顯示PostgreSQL元數據的角色標識碼(pg_catalog),而不是實際的用戶名稱。
若要擷取使用者名稱,您可以查詢 pg_roles
檢視,或使用所選 PostgreSQL 用戶端中顯示的查詢,例如 Azure Cloud Shell 和 psql
工具:
SELECT 'UserID'::regrole;
在下列範例中,您會擷取標識碼為 24776 的使用者或角色名稱。
SELECT '24776'::regrole;
下一步
- 深入了解針對高 CPU 使用率進行疑難排解。
- 深入了解高記憶體使用率。
- 深入了解針對高 IOPS 使用率進行疑難排解。
- 深入了解自動資料清理微調。