Configurer des indicateurs de base de données

Cette page explique comment configurer des indicateurs de base de données pour Cloud SQL et répertorie les indicateurs que vous pouvez définir pour votre instance. Les indicateurs de base de données sont utilisés pour de nombreuses opérations, y compris l'ajustement des paramètres et des options MySQL, ainsi que la configuration et le réglage d'une instance.

Parfois, définir un indicateur implique d'en définir un autre, afin d'activer complètement la fonctionnalité souhaitée. Par exemple, pour activer la journalisation lente des requêtes, vous devez définir à la fois l'indicateur slow_query_log sur on et l'indicateur log_output sur FILE. Grâce à ces deux indicateurs, vos journaux seront disponibles à partir de la visionneuse de journaux de Google Cloud Console.

Lorsque vous définissez, supprimez ou modifiez un indicateur pour une instance de base de données, il peut être nécessaire de la redémarrer. La nouvelle valeur de l'indicateur est ensuite conservée pour l'instance, jusqu'à ce que vous la supprimiez. Si l'instance est la source d'une instance dupliquée, l'instance dupliquée redémarre également pour s'aligner sur la configuration actuelle de l'instance.

Configurer des indicateurs de base de données

Définir un indicateur de base de données

Console

  1. Dans Google Cloud Console, créez un projet Cloud Console ou ouvrez un projet existant en sélectionnant son nom.
  2. Ouvrez l'instance et cliquez sur Modifier.
  3. Faites défiler jusqu'à la section Indicateurs.
  4. Pour définir un nouvel indicateur sur l'instance, cliquez sur Ajouter un élément, choisissez-le dans le menu déroulant et définissez sa valeur.
  5. Cliquez sur Enregistrer pour enregistrer les modifications.
  6. Confirmez les modifications effectuées dans la section Indicateurs à partir de la page de présentation.

gcloud

Modifiez l'instance :

gcloud sql instances patch [INSTANCE_NAME] --database-flags [FLAG1=VALUE1,FLAG2=VALUE2]

Cette commande va écraser tous les indicateurs de base de données précédemment définis. Pour les conserver et en ajouter d'autres, vous devez inclure les valeurs de tous les indicateurs que vous souhaitez définir sur l'instance. Tout indicateur qui n'est pas spécifiquement inclus est défini à sa valeur par défaut. Pour les indicateurs sans valeur, spécifiez le nom de l'indicateur suivi d'un signe égal ("=").

Par exemple, pour définir les indicateurs general_log, skip_show_database et wait_timeout, vous pouvez exécuter la commande suivante :

gcloud sql instances patch [INSTANCE_NAME] --database-flags \
    general_log=on,skip_show_database=on,wait_timeout=200000

REST v1beta4

Pour définir un indicateur pour une base de données existante, procédez comme suit :

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • project-id : ID du projet.
  • instance-id : ID de l'instance.

Méthode HTTP et URL :

PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Corps JSON de la requête :

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "flag_name",
        "value": "flag_value"
      }
    ]
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Par exemple, pour définir l'indicateur general_log pour une base de données existante, procédez comme suit :

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • project-id : ID du projet.
  • instance-id : ID de l'instance.

Méthode HTTP et URL :

PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Corps JSON de la requête :

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "general_log",
        "value": "on"
      }
    ]
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Si des indicateurs sont déjà configurés pour la base de données, modifiez la commande précédente pour les inclure. La commande PATCH remplace les indicateurs existants par ceux spécifiés dans la requête.

Réinitialiser les valeurs par défaut des indicateurs

Console

  1. Dans Google Cloud Console, créez un projet Cloud Console ou ouvrez un projet existant en sélectionnant son nom.
  2. Ouvrez l'instance et cliquez sur Modifier.
  3. Ouvrez la section Indicateurs de base de données.
  4. Cliquez sur le symbole X à côté de tous les indicateurs affichés.
  5. Cliquez sur Enregistrer pour enregistrer les modifications.

gcloud

Réinitialiser les valeurs par défaut des indicateurs d'une instance :

gcloud sql instances patch [INSTANCE_NAME] --clear-database-flags

Vous êtes invité à confirmer le redémarrage de l'instance.

REST v1beta4

Pour effacer tous les indicateurs sur une instance existante :

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • project-id : ID du projet.
  • instance-id : ID de l'instance.

Méthode HTTP et URL :

PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Corps JSON de la requête :

{
  "settings":
  {
    "databaseFlags": []
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Afficher les valeurs actuelles des indicateurs de base de données

Pour afficher toutes les valeurs actuelles des variables de système MySQL, connectez-vous à votre instance avec le client mysql et saisissez l'instruction suivante :

 SHOW VARIABLES;

Notez que vous ne pouvez modifier la valeur que des indicateurs compatibles (répertoriés ci-dessous).

Déterminer les indicateurs de base de données définis pour une instance

Pour savoir quels indicateurs ont été définis pour une instance Cloud SQL :

Console

  1. Dans Google Cloud Console, créez un projet Cloud Console ou ouvrez un projet existant en sélectionnant son nom.
  2. Sélectionnez l'instance pour ouvrir la page Présentation de l'instance.

    Les indicateurs de base de données définis sont répertoriés dans la section Indicateurs de base de données.

gcloud

Afficher l'état de l'instance :

gcloud sql instances describe [INSTANCE_NAME]

Dans le résultat, les indicateurs de base de données sont répertoriés sous la section settings dans la collection databaseFlags. Pour en savoir plus sur la représentation des indicateurs dans le résultat, consultez la page Représentation des ressources d'instances.

REST v1beta4

Pour répertorier les indicateurs configurés pour une instance :

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • project-id : ID du projet.
  • instance-id : ID de l'instance.

Méthode HTTP et URL :

GET https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Dans le résultat, recherchez le champ databaseFlags.

Indicateurs compatibles

Les indicateurs compatibles avec Cloud SQL correspondent aux indicateurs MySQL les plus courants.

Pour un indicateur donné, Cloud SQL peut être compatible avec une plage différente de celle du paramètre ou de l'option MySQL correspondants.

Les indicateurs s'appliquent à toutes les versions de MySQL prises en charge par Cloud SQL, sauf indication contraire.

A | B | C | D | E | F | G | I | L | M | N | O | P | Q | R | S | T | U | W

Indicateur Cloud SQL Valeurs
acceptables et remarques pour le type
Redémarrage
nécessaire ?
En
version bêta ?
activate_all_roles_on_login boolean
on | off
Par défaut : off
Non Non
auto_increment_increment integer
1 ... 65535
Non Non
auto_increment_offset integer
1 ... 65535
Non Non
binlog_cache_size integer
4096 ... 9223372036854775807
Non Non
binlog_row_image enumeration
full (par défaut), minimal ou noblob
Non Non
binlog_stmt_cache_size 4096 ... 9223372036854775807 Non Non
character_set_server string
utf8 ou utf8mb4 (recommandé)
Oui Non
default_password_lifetime integer 0...65535
Par défaut : 0
Non Non
default_time_zone string
Spécifiez les valeurs en tant que décalages de fuseau horaire, de -12:59 à +13:00. précédées de zéro.

Par exemple, Londres est dans le fuseau horaire UTC, correspondant à +00:00 dans les valeurs acceptées pour cet indicateur. Les noms de zones, tels que "Europe/Londres", ne sont pas compatibles avec Cloud SQL.

Oui Non
disconnect_on_expired_password boolean on | off
Par défaut : on
Oui Non
eq_range_index_dive_limit integer
0 ... 2147483647
Non Non
event_scheduler boolean
on | off

Si vous utilisez le planificateur d'événements, configurez votre instance avec une règle d'activation définie sur TOUJOURS, afin de garantir l'exécution des événements planifiés.

Non Non
explicit_defaults_for_timestamp boolean
on | off
Non Non
ft_max_word_len integer
10 ... 252
Oui Non
ft_min_word_len integer
1 ... 16
Oui Non
ft_query_expansion_limit integer
0 ... 1000
Oui Non
general_log boolean
on | off

Consultez la section Conseils pour plus d'informations sur les journaux généraux.

Non Non
generated_random_password_length integer 5-255
Par défaut : 20
Non Non
group_concat_max_len integer
4 ... 17179869184
Non Non
init_connect string Non Non
innodb_adaptive_hash_index boolean
on | off
Non Non
innodb_adaptive_hash_index_parts integer
1 ... 512
Oui Non
innodb_adaptive_max_sleep_delay integer
0 ... 1000000
Non Non
innodb_autoinc_lock_mode integer
0 ... 2
Oui Non
innodb_change_buffer_max_size integer
0 ... 50
Non Non
innodb_concurrency_tickets integer
1 ... 4294967295
Non Non
innodb_file_per_table boolean
on | off

Consultez la section Conseils pour plus d'informations sur cet indicateur.

Non Non
innodb_fill_factor integer
10 ... 100
Non Non
innodb_ft_cache_size integer
1600000 ... 80000000
Oui Non
innodb_ft_enable_diag_print boolean
on | off
Non Non
innodb_ft_enable_stopword boolean
on | off
Non Non
innodb_ft_max_token_size integer
10 ... 252

Compatible uniquement avec MySQL 5.6 et versions ultérieures.

Oui Non
innodb_ft_min_token_size integer
0 ... 16

Compatible uniquement avec MySQL 5.6 et versions ultérieures.

Oui Non
innodb_ft_num_word_optimize integer
1000 ... 10000
Non Non
innodb_ft_result_cache_limit integer
1000000 ... 4294967295
Non Non
innodb_ft_server_stopword_table string

Compatible uniquement avec MySQL 5.6 et versions ultérieures.

Non Non
innodb_ft_sort_pll_degree integer
1 ... 32
Oui Non
innodb_ft_total_cache_size integer
32000000 ... 1600000000
Oui Non
innodb_ft_user_stopword_table string Non Non
innodb_large_prefix boolean
on | off

Uniquement compatible avec MySQL 5.6.

Non Non
innodb_lock_wait_timeout integer
1 ... 1073741824
Non Non
innodb_log_buffer_size integer
262144 ... 4294967295
Oui Non
innodb_log_file_size integer
MySQL 5.6 : 1048576 ... 274877906944
MySQL 5.7 : 4194304 ... 274877906944
Oui Non
innodb_lru_scan_depth integer
100 ... 9223372036854775807
Non Non
innodb_old_blocks_pct integer
5 ... 95
Non Non
innodb_old_blocks_time integer
0 ... 4294967295
Non Non
innodb_online_alter_log_max_size integer
65536 ... 9223372036854775807
Non Non
innodb_optimize_fulltext_only boolean
on | off
Non Non
innodb_print_all_deadlocks boolean
on | off
Non Non
innodb_random_read_ahead boolean
on | off
Non Non
innodb_read_ahead_threshold integer
0 ... 64
Non Non
innodb_read_io_threads integer
1 ... 64
Oui Non
innodb_replication_delay integer
0 ... 4294967295
Non Non
innodb_rollback_on_timeout boolean
on | off
Oui Non
innodb_rollback_segments integer
1 ... 128
Non Non
innodb_sort_buffer_size integer
65536 ... 67108864
Oui Non
innodb_stats_auto_recalc boolean
on | off
Non Non
innodb_stats_method enumeration
nulls_equal | nulls_unequal | nulls_ignored
Non Non
innodb_stats_on_metadata boolean
on | off
Non Non
innodb_stats_persistent boolean
on | off
Non Non
innodb_stats_persistent_sample_pages integer
1 ... 9223372036854775807
Non Non
innodb_stats_sample_pages integer
1 ... 9223372036854775807
Non Non
innodb_stats_transient_sample_pages integer
1 ... 9223372036854775807
Non Non
innodb_status_output boolean
on | off
Non Non
innodb_status_output_locks boolean
on | off
Non Non
innodb_stric_mode boolean
on | off
Non Non
innodb_thread_concurrency integer
0 ... 1000
Non Non
innodb_thread_sleep_delay integer
0 ... 1000000
Non Non
innodb_write_io_threads integer
1 ... 64
Oui Non
interactive_timeout integer
1 ... 31536000
Non Non
join_buffer_size integer
128 ... 9223372036854775807
Non Non
local_infile boolean
on | off
Non Non
lock_wait_timeout integer
1 ... 31536000
Non Non
log_bin_trust_function_creators boolean
on | off
Non Non
log_output set
FILE | TABLE | NONE
Non Non
log_queries_not_using_indexes boolean
on | off
Non Non
log_throttle_queries_not_using_indexes integer
0 ... 9223372036854775807
Non Non
long_query_time float
0 ... 30000000

Cloud SQL autorise à définir cet indicateur avec une valeur inférieure à 1 si nécessaire.

Si l'indicateur log_queries_not_using_indexes est également activé, vous pouvez voir des requêtes dont la durée est inférieure à celle spécifiée ici.

Non Non
lower_case_table_names integer
0 ou 1

Dans la plupart des cas, la valeur par défaut de 0 doit être utilisée, ce qui rend les noms de la table et des bases de données sensibles à la casse. Si vous devez modifier la valeur de cet indicateur, assurez-vous de bien comprendre en quoi les modifications affecteront vos tables et bases de données existantes. Cet indicateur n'est pas compatible avec MySQL 8 pour Cloud SQL.

Oui Non
mandatory_roles string role name
Par défaut : empty string
Non Non
max_allowed_packet integer
16384 ... 1073741824

Cette valeur doit être un multiple de 1 024, si sql_mode=TRADITIONAL ou sql_mode=STRICT_ALL_TABLES.

Non Non
max_binlog_size integer
4096 ... 1073741824
Non Non
max_connections integer
25 ... 100000
Non Non
max_digest_length integer
0 ... 1048576
Oui Non
max_execution_time integer
0 ... 9223372036854775807
Non Non
max_heap_table_size integer
16384 ... 67108864

Consultez la section Conseils pour plus d'informations sur cet indicateur.

Non Non
max_join_size integer
16 ... 9223372036854775807
Non Non
max_length_for_sort_data integer
4 ... 8388608
Non Non
max_points_in_geometry integer
3 ... 1048576
Non Non
max_prepared_stmt_count integer
0 ... 1048576
Non Non
max_seeks_for_key integer
1 ... 9223372036854775807
Non Non
max_sort_length integer
4 ... 8388608
Non Non
max_sp_recursion_depth integer
0 ... 255
Non Non
max_user_connections integer
0 ... 4294967295
Non Non
max_write_lock_count integer
1 ... 9223372036854775807
Non Non
net_read_timeout integer
30 ... 4294967295
Non Non
net_retry_count integer
10 ... 4294967295
Non Non
net_write_timeout integer
60 ... 4294967295
Non Non
optimizer_prune_level integer
0 ... 1
Non Non
optimizer_search_depth integer
0 ... 62
Non Non
optimizer_trace_max_mem_size integer
0 ... 9223372036854775807
Non Non
optimizer_trace_offset integer
-9223372036854775808 ... 9223372036854775807
Non Non
parser_max_mem_size integer
10000000 ... 9223372036854775807
Non Non
password_history integer 0-4294967295
Par défaut : 0
Non Non
password_require_current boolean on | off
Par défaut : off
Non Non
password_reuse_interval integer 0-4294967295
Par défaut : 0
Non Non
performance_schema boolean
on | off (par défaut)

Consultez la section Conseils pour en savoir plus sur les indicateurs performance_schema.

Oui Non
performance_schema_accounts_size integer
-1 ... 1048576

Consultez la section Conseils pour en savoir plus sur les indicateurs performance_schema.

Oui Non
performance_schema_digests_size integer
-1 ... 1048576

Consultez la section Conseils pour en savoir plus sur les indicateurs performance_schema.

Oui Non
performance_schema_events_stages_history_long_size integer
-1 ... 1048576
Oui Non
performance_schema_events_stages_history_size integer
-1 ... 1024

Consultez la section Conseils pour en savoir plus sur les indicateurs performance_schema.

Oui Non
performance_schema_events_statements_history_long_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_events_statements_history_size integer
-1 ... 1024

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_events_transactions_history_long_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_events_transactions_history_size integer
-1 ... 1024

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_events_waits_history_long_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_events_waits_history_size integer
-1 ... 1024

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_hosts_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_cond_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_cond_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_digest_length integer
0 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_file_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_file_handles integer
0 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_file_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_index_stat integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_memory_classes integer
0 ... 1024

Consultez la section Conseils pour en savoir plus sur les indicateurs performance_schema.

Oui Non
performance_schema_max_metadata_locks integer
-1 ... 104857600

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_mutex_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_mutex_instances integer
-1 ... 104857600

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_prepared_statements_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_program_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_rwlock_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_rwlock_instances integer
-1 ... 104857600

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_socket_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_socket_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_sql_text_length integer
0 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_stage_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_statement_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_statement_stack integer
1 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_table_handles integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_table_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_table_lock_stat integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_thread_classes integer
0 ... 256

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_max_thread_instances integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_session_connect_attrs_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_setup_actors_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_setup_objects_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
performance_schema_users_size integer
-1 ... 1048576

Consultez la section Conseils pour plus d'informations sur les indicateurs performance_schema.

Oui Non
query_alloc_block_size integer
1024 ... 4294967295
Non Non
query_cache_limit integer
0 ... 223338299392
Non Non
query_cache_min_res_unit integer
0 ... 9223372036854775807
Non Non
query_cache_size integer
0 ... 223338299392

Consultez la section Conseils pour plus d'informations sur cet indicateur.

Non Non
query_cache_type enumeration
0 ... 2

Consultez la section Conseils pour plus d'informations sur cet indicateur.

Oui Non
query_cache_wlock_invalidate boolean
on | off
Non Non
query_prealloc_size integer
8192 ... 9223372036854775807
Non Non
range_alloc_block_size integer
4096 ... 4294967295
Non Non
range_optimizer_max_mem_size integer
0 ... 9223372036854775807
Non Non
read_buffer_size integer
8192 ... 2147483647
Non Non
read_only boolean
on | off

Aucun effet sur les instances dupliquées.

Non Non
read_rnd_buffer_size integer
1 ... 2147483647
Non Non
show_compatibility_56 boolean
on | off

Uniquement compatible avec MySQL 5.7.

Non Non
skip_show_database flag
on | off
Oui Non
slow_query_log integer
0 | 1

Consultez la section Conseils pour plus d'informations sur les journaux de requêtes lentes.

Non Non
sort_buffer_size integer
32768 ... 9223372036854775807
Non Non
sql_mode string

Consultez la page sur les modes SQL du serveur dans la documentation MySQL pour connaître les valeurs autorisées, y compris pour les modes combinés tels que ANSI. NO_DIR_IN_CREATE n'est pas accepté.

Non Non
stored_program_cache integer
16 ... 524288
Non Non
sync_binlog integer
0 ... 4294967295

Compatible uniquement avec MySQL 5.7 et 8.0, et les instances dupliquées. Si une instance dupliquée utilisant cet indicateur est promue, l'indicateur est supprimé. Il n'est pas compatible avec les instances principales autonomes.

  • 0 = désactive la synchronisation du journal binaire sur le disque.
  • 1 (par défaut) = active la synchronisation du journal binaire sur le disque avant le commit des transactions. Ce paramètre est le plus sûr, mais il peut avoir un impact négatif sur les performances en raison de l'augmentation du nombre d'écritures sur le disque.
  • N = où N est une valeur autre que 0 ou 1. Le journal binaire est synchronisé sur le disque une fois que N groupes de commits de journaux binaires ont été collectés. Ce paramètre peut avoir un impact négatif sur les performances en raison d'une augmentation du nombre d'écritures sur le disque. Une valeur plus élevée permet d'améliorer les performances, mais accroît le risque de perte de données.
Non Non
table_definition_cache integer
400 ... 524288
Non Non
table_open_cache integer
1 ... 524288
Non Non
table_open_cache_instances integer
1 ... 64
Oui Non
thread_cache_size integer
0 ... 16384
Non Non
thread_stack integer
131072 ... 9223372036854775807
Oui Non
tmp_table_size integer
1024 ... 67108864

Consultez la section Conseils pour plus d'informations sur cet indicateur.

Non Non
transaction_alloc_block_size integer
1024 ... 131072
Non Non
transaction_isolation enumeration
READ-UNCOMMITTED | READ-COMMITTED | REPEATABLE-READ | SERIALIZABLE
Oui Non
transaction_prealloc_size integer
1024 ... 131072
Non Non
updatable_views_with_limit integer
0 ... 1
Non Non
wait_timeout integer
1 ... 31536000
Non Non

Conseils pour l'utilisation d'indicateurs

general_log, slow_query_log

Pour que vos journaux general ou slow query soient disponibles, activez l'indicateur correspondant et définissez l'indicateur log_output sur FILE. De cette façon, la sortie du journal sera disponible dans la visionneuse de journaux de Google Cloud Console. Notez que les frais de journalisation de la suite des opérations Google Cloud s'appliquent. Afin de réduire les coûts de stockage des instances, les journaux general et slow query stockés sur le disque de l'instance font l'objet d'une rotation lorsque l'âge du fichier journal dépasse 24 heures ou sa taille est supérieure à 100 Mo, et les anciens fichiers journaux sont automatiquement supprimés après la rotation.

Si log_output est défini sur NONE, vous ne pourrez pas accéder aux journaux. Si vous définissez log_output sur TABLE, la sortie du journal est placée dans une table de votre base de données. Si cette table devient trop volumineuse, cela peut affecter le temps de redémarrage de l'instance ou compromettre sa couverture par le contrat de niveau de service. Pour cette raison, l'option TABLE n'est pas recommandée. Si nécessaire, vous pouvez tronquer vos tables de journal à l'aide de l'API. Pour plus d'informations, consultez la page de la documentation de référence sur la méthode instances.truncateLog.

innodb_file_per_table

Pour toutes les versions MySQL 5.6 et ultérieures, la valeur par défaut est ON.

max_heap_table_size, tmp_table_size

La mémoire d'instance disponible peut s'épuiser lorsque vous définissez des valeurs trop élevées pour tmp_table_size et max_heap_table_size par rapport au nombre de requêtes traitées simultanément par l'instance. L'épuisement de la mémoire provoquera le plantage et le redémarrage de l'instance.

Certaines valeurs pour ces indicateurs peuvent compromettre la couverture de l'instance par le contrat de niveau de service En savoir plus Pour en savoir plus sur l'utilisation de ces indicateurs, reportez-vous aux pages Comment MySQL utilise les tables temporaires internes et Moteur de stockage MEMORY.

performance_schema*

Vous devez utiliser l'API pour modifier la valeur de cet indicateur. Cet indicateur ne peut pas être activé sur les instances de niveau inférieur à db-n1-standard-8 ou db-n1-highmem-4. Si cet indicateur est activé, vous ne pourrez pas abaisser votre instance à un niveau non compatible avec cet indicateur. Vous devrez d'abord désactiver l'indicateur.

query_cache_size, query_cache_type

Certaines valeurs pour ces indicateurs peuvent compromettre la couverture de l'instance par le contrat de niveau de service En savoir plus

Indicateurs gérés par Cloud SQL

Cloud SQL ajuste certains indicateurs de système en fonction du niveau de l'instance. Vous ne pouvez pas ajuster ces valeurs.

Indicateur Cloud SQL Valeurs et notes
innodb_buffer_pool_instances Pour plus d'informations sur cet indicateur, consultez la section Instances du pool de mémoire tampon ci-dessous.
innodb_buffer_pool_size Pour plus d'informations sur cet indicateur, consultez la section Taille du pool de mémoire tampon ci-dessous.
innodb_buffer_pool_instances
  • 1 pour f1-micro, g1-small et n1-standard-1.
  • 2 pour n1-standard-2.
  • 4 pour n1-standard-4 et n1-highmem-2.
  • 8 pour tous les autres niveaux.

innodb_buffer_pool_size

tailles approximatives.

  • ~ 1,5 Go pour f1-micro, g1-petit et n1-standard-1.
  • ~ 4 Go pour n1-standard-2.
  • ~ 11 Go pour n1-standard-4.
  • ~ 22 Go pour n1-standard-8.
  • ~ 46 Go pour n1-standard-16.
  • ~ 92 Go pour n1-standard-32.
  • ~ 186 Go pour la norme n1-64.
  • ~ 10 Go pour n1-highmem-2.
  • ~ 20 Go pour n1-highmem-4.
  • ~ 40 Go pour n1-highmem-8.
  • ~ 80 Go pour n1-highmem-16.
  • ~ 160 Go pour n1-highmem-32.
  • ~ 320 Go pour n1-highmem-64.

Dépannage

Cliquez sur les liens du tableau pour en savoir plus :

Pour ce problème... Le problème peut être... Essayez ce qui suit...
Données utilisant le jeu de caractères utf8mb4. Ce jeu de caractères n'est pas disponible. Filtrez les chaînes utf8mb4 pour les exclure de vos données.
L'activation d'un indicateur fait planter l'instance. L'option max_connections est peut-être définie sur une valeur trop élevée. Contactez le service client pour demander la suppression d'une option.
Impossible d'ajouter l'option performance_schema. La taille de l'instance est trop faible. Effectuez une mise à jour vers une instance plus grande.
Le fuseau horaire n'est pas modifié automatiquement. Le changement automatique du fuseau horaire n'est pas disponible. L'heure doit être modifiée manuellement. En savoir plus
Bad syntax for dict arg. Les valeurs de paramètres complexes nécessitent un traitement particulier. En savoir plus

Données utilisant le jeu de caractères utf8mb4

Échec de l'importation de données utilisant le jeu de caractères utf8mb4.

Cause possible

Le jeu de caractères utf8mb4 n'est pas accepté, même si la documentation le mentionnait précédemment.

Solutions possibles

Filtrez les chaînes utf8mb4 pour les exclure de vos données.


L'activation d'une option fait planter l'instance

Une fois que vous avez activé une option, une boucle se produit entre la panique et le plantage de l'instance.

Cause possible

Définir l'option max_connections sur une valeur trop élevée entraîne cette erreur.

Solutions possibles

Contactez le service client pour demander la suppression de l'option et un hard drain. Cela force l'instance à redémarrer sur un autre hôte avec une nouvelle configuration, sans indicateur ni paramètre indésirables.


Impossible d'ajouter l'indicateur performance_schema

Vous ne pouvez pas ajouter l'option performance_schema, car elle ne figure pas dans le menu déroulant des options compatibles.

Cause possible

L'option performance_schema et ses variantes (performance_schema_accounts_size, performance_schema_accounts_size, etc.) ne peuvent pas être activées sur des instances de niveau inférieur à db-n1-standard-8 ou db-n1-highmem-4.

Solutions possibles

Modifiez l'instance pour obtenir une taille plus grande si vous devez utiliser cette option.


Le fuseau horaire n'est pas modifié automatiquement

Le fuseau horaire ne s'est pas automatiquement mis à jour pour le passage à l'heure d'été.

Cause possible

Les changements automatiques du fuseau horaire ne sont pas compatibles avec Cloud SQL et doivent être effectués manuellement, et ce non par chaîne, mais par valeur de décalage de fuseau horaire.

Solutions possibles

Modifiez l'instance pour changer l'indicateur default_time_zone. Les zones nommées ne sont pas compatibles. Exemple : Londres (Europe/London) est dans le fuseau horaire UTC, qui serait une valeur acceptée de +00:00 pour l'option default_time_zone.


Syntaxe incorrecte pour l'argument dict

Le message d'erreur Bad syntax for dict arg s'affiche lorsque vous tentez de définir une option.

Cause possible

Les valeurs de paramètre complexes, telles que les listes d'éléments séparés par une virgule, nécessitent un traitement particulier lorsqu'elles sont utilisées avec des commandes gcloud.

Solutions possibles

Utilisez le paramètre gcloud --flags-file, qui spécifie un fichier YAML ou JSON contenant un dictionnaire --flag:value utile pour les valeurs d'options complexes.

Étapes suivantes