重新配置临时表设置

本页面介绍如何管理临时表的数量。此 Recommender 称为重新配置临时表设置

此 Recommender 会每天分析与临时表总数相比,在磁盘上创建的临时表数量。如果在磁盘上创建的临时表数量超过表总数的 20%,则此 Recommender 会建议您执行以下任一操作:

  • 增加 tmp_table_size 标志和/或 max_heap_table_size 标志的值。

  • 如果 max_heap_tmp_table_sizetmp_table_size 的值不相等,则增加较小的值以匹配较大的值。

  • 如果 max_heap_tmp_table_sizetmp_table_size 的值相同,则将它们都增加到更大的值。

如需详细了解如何增加 tmp_table_size 的值,请参阅 tmp_table_size

价格

重新配置临时表设置 Recommender 属于标准 Recommender 价格层级

准备工作

启用 Recommender API

所需的角色和权限

如需获得查看和使用数据分析和建议的权限,请确保您具有所需的 Identity and Access Management (IAM) 角色

任务 角色
查看建议 recommender.cloudsqlViewercloudsql.admin
采纳建议 cloudsql.editorcloudsql.admin
如需详细了解 IAM 角色,请参阅 IAM 基本角色和预定义角色参考文档以及管理对项目、文件夹和组织的访问权限

列出建议

如需列出建议,请按以下步骤操作:

控制台

如需列出有关实例性能的建议,请按照以下步骤操作:

  1. 转到 Cloud SQL 实例页面。

打开“Cloud SQL 实例”

  1. 调查问题并根据建议采取相应措施,从而改善实例健康状况横幅上,点击展开详细信息

或者,请按以下步骤操作:

  1. 转到 Recommendation Hub。另请参阅通过 Recommendation 查找和应用建议

    转到 Recommendation Hub

  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

查看数据分析和详细建议

如需查看数据分析和详细建议,请按以下步骤操作:

控制台

执行下列其中一项操作:

  • 性能建议页面上,点击性能建议卡片,然后点击重新配置临时表设置。系统会显示建议面板,其中包含实例的分析洞见和详细建议。

  • 实例页面上,点击重新配置临时表设置。实例列表仅显示建议适用的实例。

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 标志的值相同,则将它们都增加到更大的值。

后续步骤