如何從 Performance Insights 中下載 Amazon Aurora PostgreSQL 相容版執行個體的相關 SQL 全文?

2 分的閱讀內容
0

我想從 Performance Insights 中下載 Amazon Aurora PostgreSQL 相容版資料庫執行個體的相關 SQL 全文。

簡短說明

Amazon Aurora PostgreSQL 相容版處理 Performance Insights 中文字的方式與其他引擎類型 (Aurora MySQL 相容版) 不同。預設情況下,Performance Insights 儀表板上的常用 SQL 索引標籤下的每一列,都會針對每個 SQL 陳述式顯示 500 位元組的 SQL 文字。當 SQL 陳述式超過 500 位元組時,您就可以在「常用 SQL」表格下方的 SQL 文字區段中檢視更多文字。SQL 文字區段中顯示的文字長度上限為 4 KB。如果 SQL 陳述式超過 4096 個字元,則會在 SQL 文字區段中顯示截斷的版本。但是,您可以從「常用 SQL」索引標籤的 SQL 文字區段下載完整的 SQL 文字。

track_activity_query_size 資料庫參數可指定為每個作用中工作階段儲存目前執行之命令的文字所預留的記憶體數量。此參數可決定在 pg_stat_activity 查詢欄中顯示的查詢長度上限。若要設定 SQL 陳述式的文字長度限制並將該限制儲存在資料庫中,請修改 track_activity_query_size 參數。您可以在執行個體或叢集參數群組層級修改此參數。請查看 SQL 陳述式允許的最長和最短文字長度限制:

Aurora_Postgres_Version下限上限
10.x100102400
11.x100102400
12.x100102400
13.x1001048576
14.x1001048576

解決方案

使用 Amazon Relational Database Service (Amazon RDS) 主控台可以從 Performance Insights 下載完整的 SQL 文字。如果完整的 SQL 文字長度超過 track_activity_query_size 的值,請先提高 track_activity_query_size 的值,然後再下載 SQL 文字。track_activity_query_size 參數是固定的,因此您必須在變更其值之後重新啟動叢集。

例如,SQL 文字大小可能設定為 1 MB,而 track_activity_query_size 的預設值则设定为了 4096 位元組。在這種情況下,無法下載完整的 SQL。當引擎執行 Performance Insights 中的 SQL 文字時,Amazon RDS 主控台只會顯示前 4 KB 的文字。將 track_activity_query_size 的值提高到 1 MB 或更大,然後再下載完整的查詢。在這種情況下,檢視和下載 SQL 文字會傳回不同的位元組數。

在 Performance Insights 儀表板中,您可以按照下列步驟檢視或下載完整的 SQL 文字:

1.    開啟 Amazon RDS 主控台

2.    在導覽窗格中,選擇 Performance Insights

3.    選擇您要檢視 Performance Insights 的資料庫執行個體。

4.    從常用 SQL 索引標籤中,選擇要檢視的 SQL 陳述式。

5.    在 SQL 文字索引標籤底下,每個 SQL 陳述式最多可以顯示 4,096 個位元組。如果 SQL 陳述式位于此限值範圍內,請選擇複製以複製該 SQL。

6.    如果 SQL 陳述式的長度大於 4,096,則會在此檢視畫面中將其截斷。選擇下載可下載完整的 SQL。

注意:設定的 track_activity_query_size 參數一定要大於您要下載的 SQL 陳述式的長度值。


相關資訊

檢視 Aurora PostgreSQL 資料庫叢集和資料庫參數

重新啟動 Aurora 叢集 (Aurora PostgreSQL 以及 2.10 版之前的 Aurora MySQL)

AWS 官方
AWS 官方已更新 2 年前