本頁面說明如何管理臨時表數量。這個推薦工具稱為「調整臨時資料表設定」。
這個推薦工具每天都會比較磁碟上建立的臨時資料表數量與臨時資料表總數,如果在磁碟上建立的臨時資料表數量超過資料表總數的 20%,則這項最佳化建議會建議您採取下列其中一種做法:
請提高
tmp_table_size
或max_heap_table_size
旗標的值,或同時提高兩者的值。如果
max_heap_tmp_table_size
和tmp_table_size
的值不相等,請將較小的值增加至與較大的值相符。如果
max_heap_tmp_table_size
和tmp_table_size
的值相同,請將兩者都調高至更大的值。
如要進一步瞭解如何增加 tmp_table_size
的值,請參閱 tmp_table_size
。
定價
「調整臨時資料表設定」推薦工具屬於 標準 推薦工具計價等級。
事前準備
必要角色和權限
如要取得查看洞察資料和最佳化建議的權限,請確認您具備必要的 Identity and Access Management (IAM) 角色。
工作 | 角色 |
---|---|
查看建議 |
recommender.cloudsqlViewer 或 cloudsql.admin
|
套用建議 |
cloudsql.editor
或 cloudsql.admin
|
列出建議
如要列出推薦內容,請按照下列步驟操作:
主控台
如要查看關於執行個體效能的最佳化建議,請按照下列步驟操作:
- 前往「Cloud SQL 執行個體」頁面。
- 在「調查問題並按照建議採取行動,增進執行個體健康」橫幅上,按一下「展開詳細資料」。
或者,請按照下列步驟操作:
前往「推薦內容」中心。另請參閱「使用最佳化建議找出並套用最佳化建議」。
在「所有建議」資訊卡中,按一下「成效」。
gcloud
執行 gcloud recommender recommendations list
指令,如下所示:
gcloud recommender recommendations list \ --project=PROJECT_ID \ --location=LOCATION \ --recommender=google.cloudsql.instance.PerformanceRecommender \ --filter=recommenderSubtype=MYSQL_RECONFIG_TMP_TABLES
更改下列內容:
- PROJECT_ID:您的專案 ID
- LOCATION:執行個體所在的區域,例如
us-central1
API
呼叫 recommendations.list
方法,如下所示:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender/recommendations
更改下列內容:
- PROJECT_ID:您的專案 ID
- LOCATION:執行個體所在的區域,例如
us-central1
查看洞察資料和詳細最佳化建議
如要查看洞察資料和詳細建議,請按照下列步驟操作:
主控台
執行下列其中一個步驟:
在「Performance Recommendations」頁面中,按一下「Performance recommendations」資訊卡,然後點選「Reconfigure temp table settings」。系統會顯示建議面板,其中包含執行個體的洞察資料和詳細建議。
在「Instances」頁面中,按一下「Reconfigure temp table settings」。執行個體清單只會顯示適用於建議的執行個體。
gcloud
執行 gcloud recommender insights list
指令,如下所示:
gcloud recommender insights list \ --project=PROJECT_ID \ --location=LOCATION \ --insight-type=google.cloudsql.instance.PerformanceInsight \ --filter=insightSubtype=INSIGHT_SUBTYPE
更改下列內容:
- PROJECT_ID:您的專案 ID
- LOCATION:執行個體所在的區域,例如
us-central1
- INSIGHT_SUBTYPE:將此參數設為下列其中一個值:
MYSQL_HIGH_NUMBER_OF_TMP_TABLE_ON_DISK_TMP_TABLE
:顯示目前執行個體磁碟上暫存資料表的總數洞察資料MYSQL_HIGH_NUMBER_OF_TMP_TABLE_ON_DISK_MAX_HEAP
:顯示執行個體磁碟上使用者建立的臨時資料表總數洞察資料
API
呼叫 insights.list
方法,如下所示:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceInsight/insights
更改下列內容:
- PROJECT_ID:您的專案 ID
- LOCATION:執行個體所在的區域,例如
us-central1
套用最佳化建議
如要實施這項最佳化建議,請採取下列任一做法:
如果
max_heap_tmp_table_size
和tmp_table_size
標記的值不相等,請將較小的值增加至與較大的值相符。如果
max_heap_tmp_table_size
和tmp_table_size
標記的值相同,請將兩者都調高至更大的值。