重新設定臨時資料表

本頁面說明如何管理臨時表數量。這個推薦工具稱為「調整臨時資料表設定」

這個推薦工具每天都會比較磁碟上建立的臨時資料表數量與臨時資料表總數,如果在磁碟上建立的臨時資料表數量超過資料表總數的 20%,則這項最佳化建議會建議您採取下列其中一種做法:

  • 請提高 tmp_table_sizemax_heap_table_size 旗標的值,或同時提高兩者的值。

  • 如果 max_heap_tmp_table_sizetmp_table_size 的值不相等,請將較小的值增加至與較大的值相符。

  • 如果 max_heap_tmp_table_sizetmp_table_size 的值相同,請將兩者都調高至更大的值。

如要進一步瞭解如何增加 tmp_table_size 的值,請參閱 tmp_table_size

定價

「調整臨時資料表設定」推薦工具屬於 標準 推薦工具計價等級

事前準備

啟用 Recommender API

必要角色和權限

如要取得查看洞察資料和最佳化建議的權限,請確認您具備必要的 Identity and Access Management (IAM) 角色

工作 角色
查看建議 recommender.cloudsqlViewercloudsql.admin
套用建議 cloudsql.editorcloudsql.admin
如要進一步瞭解 IAM 角色,請參閱「IAM 基本角色和預先定義角色參考資料」和「管理專案、資料夾和機構的存取權」。

列出建議

如要列出推薦內容,請按照下列步驟操作:

主控台

如要查看關於執行個體效能的最佳化建議,請按照下列步驟操作:

  1. 前往「Cloud SQL 執行個體」頁面。

前往 Cloud SQL 執行個體

  1. 在「調查問題並按照建議採取行動,增進執行個體健康」橫幅上,按一下「展開詳細資料」

或者,請按照下列步驟操作:

  1. 前往「推薦內容」中心。另請參閱「使用最佳化建議找出並套用最佳化建議」。

    前往「推薦中心」

  2. 在「所有建議」資訊卡中,按一下「成效」

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_sizetmp_table_size 標記的值不相等,請將較小的值增加至與較大的值相符。

  • 如果 max_heap_tmp_table_sizetmp_table_size 標記的值相同,請將兩者都調高至更大的值。

後續步驟