Configurar marcas de bases de datos

En esta página se describe cómo configurar marcas de bases de datos en Cloud SQL y se enumeran las marcas que puedes definir en tu instancia. Las marcas de bases de datos se usan en muchas operaciones, como ajustar los parámetros de MySQL, las opciones y la configuración y el ajuste de una instancia.

En algunos casos, para habilitar por completo la función que quieras usar, es posible que tengas que definir otra marca. Por ejemplo, para habilitar el registro de consultas lentas, debes definir la marca slow_query_log en on y la marca log_output en FILE para que tus registros estén disponibles en el Explorador de registros de la consola Google Cloud .

Cuando define, quita o modifica una marca de una instancia de base de datos, es posible que la base de datos se reinicie. El valor de la marca se conserva en la instancia hasta que lo elimines. Si la instancia es el origen de una réplica y se reinicia, la réplica también se reinicia para adaptarse a la configuración actual de la instancia.

Configurar marcas de bases de datos

En las siguientes secciones se describen las tareas habituales de gestión de denuncias.

Definir una marca de base de datos

Consola

  1. En la Google Cloud consola, selecciona el proyecto que contiene la instancia de Cloud SQL para la que quieras definir una marca de base de datos.
  2. Abre la instancia y haz clic en Editar.
  3. Ve a la sección Banderas.
  4. Si quieres configurar una marca que no se haya establecido previamente en la instancia, haz clic en Añadir elemento, elige la marca en el menú desplegable y establece su valor.
  5. Haz clic en Guardar para guardar los cambios.
  6. Confirma los cambios en la sección de marcas de la página de la visión general.

gcloud

Edita la instancia:

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

Este comando sobrescribirá todas las marcas de la base de datos que se hayan definido anteriormente. Para mantenerlos y añadir otros, incluya los valores de todas las marcas que quiera definir en la instancia. Las marcas que no se incluyan específicamente se definirán con su valor predeterminado. En el caso de las marcas que no aceptan ningún valor, especifica el nombre de la marca seguido de un signo igual ("=").

Por ejemplo, para definir las marcas general_log, skip_show_database y wait_timeout, puedes usar el siguiente comando:

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

Terraform

Para añadir marcas de base de datos, usa un recurso de Terraform.

resource "google_sql_database_instance" "instance" {
  database_version = "MYSQL_8_0"
  name             = "mysql-instance"
  region           = "us-central1"
  settings {
    database_flags {
      name  = "general_log"
      value = "on"
    }
    database_flags {
      name  = "skip_show_database"
      value = "on"
    }
    database_flags {
      name  = "wait_timeout"
      value = "200000"
    }
    disk_type = "PD_SSD"
    tier      = "db-n1-standard-2"
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

Aplica los cambios

Para aplicar la configuración de Terraform en un proyecto, sigue los pasos que se indican en las siguientes secciones. Google Cloud

Preparar Cloud Shell

  1. Abre Cloud Shell.
  2. Define el Google Cloud proyecto Google Cloud predeterminado en el que quieras aplicar tus configuraciones de Terraform.

    Solo tiene que ejecutar este comando una vez por proyecto y puede hacerlo en cualquier directorio.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Las variables de entorno se anulan si defines valores explícitos en el archivo de configuración de Terraform.

Preparar el directorio

Cada archivo de configuración de Terraform debe tener su propio directorio (también llamado módulo raíz).

  1. En Cloud Shell, crea un directorio y un archivo nuevo en ese directorio. El nombre del archivo debe tener la extensión .tf. Por ejemplo, main.tf. En este tutorial, nos referiremos al archivo como main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Si estás siguiendo un tutorial, puedes copiar el código de ejemplo de cada sección o paso.

    Copia el código de ejemplo en el archivo main.tf que acabas de crear.

    También puedes copiar el código de GitHub. Se recomienda cuando el fragmento de Terraform forma parte de una solución integral.

  3. Revisa y modifica los parámetros de ejemplo para aplicarlos a tu entorno.
  4. Guarda los cambios.
  5. Inicializa Terraform. Solo tienes que hacerlo una vez por directorio.
    terraform init

    Si quieres usar la versión más reciente del proveedor de Google, incluye la opción -upgrade:

    terraform init -upgrade

Aplica los cambios

  1. Revisa la configuración y comprueba que los recursos que va a crear o actualizar Terraform se ajustan a tus expectativas:
    terraform plan

    Haga las correcciones necesarias en la configuración.

  2. Aplica la configuración de Terraform ejecutando el siguiente comando e introduciendo yes en la petición:
    terraform apply

    Espera hasta que Terraform muestre el mensaje "Apply complete!".

  3. Abre tu Google Cloud proyecto para ver los resultados. En la Google Cloud consola, ve a tus recursos en la interfaz de usuario para asegurarte de que Terraform los ha creado o actualizado.

Eliminar los cambios

Para eliminar los cambios, sigue estos pasos:

  1. Para inhabilitar la protección contra la eliminación, en el archivo de configuración de Terraform, asigna el valor false al argumento deletion_protection.
    deletion_protection =  "false"
  2. Aplica la configuración de Terraform actualizada ejecutando el siguiente comando e introduciendo yes en la petición:
    terraform apply
  1. Para quitar los recursos que se hayan aplicado anteriormente con tu configuración de Terraform, ejecuta el siguiente comando e introduce yes en la petición:

    terraform destroy

REST v1

Para definir una marca en una base de datos, sigue estos pasos:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

Por ejemplo, para definir la marca general_log en una base de datos ya creada, haz lo siguiente:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

Si ya hay marcas configuradas para la base de datos, modifica el comando anterior para incluirlas. El comando PATCH sustituye las marcas actuales por las especificadas en la petición.

REST v1beta4

Para definir una marca en una base de datos, sigue estos pasos:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

Por ejemplo, para definir la marca general_log en una base de datos ya creada, haz lo siguiente:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

Si ya hay marcas configuradas para la base de datos, modifica el comando anterior para incluirlas. El comando PATCH sustituye las marcas actuales por las especificadas en la petición.

Borrar todas las marcas y restablecer sus valores predeterminados

Consola

  1. En la Google Cloud consola, selecciona el proyecto que contiene la instancia de Cloud SQL de la que quieres borrar todas las marcas.
  2. Abre la instancia y haz clic en Editar.
  3. Abre la sección de marcas de base de datos.
  4. Haz clic en la X situada junto a todas las alertas que se muestren.
  5. Haz clic en Guardar para guardar los cambios.

gcloud

Restablece el valor predeterminado de todas las marcas de una instancia de este modo:

gcloud sql instances patch INSTANCE_NAME \
--clear-database-flags

Se te pedirá que aceptes que la instancia se reinicie.

REST v1

Si quieres borrar todas las marcas de una instancia, usa este método:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

REST v1beta4

Si quieres borrar todas las marcas de una instancia, usa este método:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

Ver los valores actuales de las marcas de bases de datos

Para ver todos los valores actuales de las variables del sistema MySQL, inicia sesión en tu instancia con el cliente mysql e introduce la siguiente instrucción:

 SHOW VARIABLES;

Ten en cuenta que solo puedes cambiar el valor de las marcas admitidas como se detalla a continuación.

Determinar qué marcas de bases de datos se han definido en una instancia

Para ver qué marcas se han definido en una instancia de Cloud SQL, sigue estos pasos:

Consola

  1. En la Google Cloud consola, selecciona el proyecto que contiene la instancia de Cloud SQL de la que quieres ver las marcas de base de datos que se han definido.
  2. Selecciona la instancia para abrir la página de visión general de dicha instancia.

    Las marcas de base de datos establecidas se pueden consultar en la sección sobre marcas de base de datos.

gcloud

Obtén el estado de la instancia:

gcloud sql instances describe INSTANCE_NAME

En la salida, las marcas de bases de datos se muestran en settings como la colección databaseFlags. Para obtener más información sobre la representación de las marcas en el resultado, consulta Representación del recurso Instances.

REST v1

Si quieres identificar los indicadores configurados en una instancia, usa este método:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

En el resultado, busca el campo databaseFlags.

REST v1beta4

Si quieres identificar los indicadores configurados en una instancia, usa este método:

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • project-id: el ID del proyecto
  • instance-id: el ID de instancia.

Método HTTP y URL:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

En el resultado, busca el campo databaseFlags.

Marcas gestionadas por Cloud SQL

Cloud SQL ajusta determinadas marcas del sistema en función del tipo de máquina de la instancia.

innodb_buffer_pool_instances
  • 1 para db-f1-micro y db-g1-small.
  • 1 si la RAM es inferior a 7,5 GB.
  • 2 si 7,5 GB <= RAM < 13 GB.
  • 4 si 13 GB <= RAM < 26 GB.
  • 8 si la RAM es de 26 GB o más.

Marcas compatibles

Las marcas admitidas en Cloud SQL son las que se solicitan con más frecuencia para MySQL. No se admiten las marcas que no se mencionan a continuación.

En el caso de una marca determinada, Cloud SQL puede admitir un valor o un intervalo diferente del parámetro o la opción de MySQL correspondiente.

Las marcas se aplican a todas las versiones de MySQL compatibles con Cloud SQL, excepto cuando se indique lo contrario.

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

Para obtener más información sobre esta marca, consulta la sección Consejos.

Marca Cloud SQL Tipo
Valores aceptables y notas
¿Es necesario reiniciar
?
activate_all_roles_on_login boolean
on | off
default: off
No
Confirmación automática boolean
on | off
predeterminado: on
No
auto_increment_increment integer
1 ... 65535
No
auto_increment_offset integer
1 ... 65535
No
automatic_sp_privileges boolean
on | off
predeterminado: on
No
back_log integer
1 ... 65535
default: max_connections
binlog_cache_size integer
4096 ... 9223372036854775807
No
binlog_expire_logs_seconds integer
0 o 86400 (1 day) ... 4294967295 (max value)
El valor predeterminado es 2592000, que equivale a 30 días.

Consulta la sección Consejos para obtener más información sobre esta marca.

No
binlog_group_commit_sync_delay 0 ... 1.000.000

Compatible con MySQL 5.7 y versiones posteriores

El valor predeterminado es 0.

No
binlog_group_commit_sync_no_delay_count 0 ... 1.000.000

Compatible con MySQL 5.7 y versiones posteriores

El valor predeterminado es 0.

No
binlog_gtid_simple_recovery boolean
on | off
predeterminado: on
binlog_order_commits boolean
on | off
predeterminado: on

Consulta la sección Consejos para obtener más información sobre esta marca.

No
binlog_row_image enumeration
full (predeterminado), minimal o noblob
No
binlog_row_metadata enumeration
full o minimal (predeterminado)
No
binlog_row_value_options string
PARTIAL_JSON
No
binlog_rows_query_log_events boolean
on | off
predeterminado: off
No
binlog_stmt_cache_size 4096 ... 9223372036854775807 No
binlog_transaction_dependency_history_size integer

Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

No
binlog_transaction_dependency_tracking enumeration

Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo. Esta marca no es compatible con MySQL 8.4.

No
block_encryption_mode string
aes-keylen-mode
predeterminado: aes-128-ECB
No
bulk_insert_buffer_size integer
0 ... 4294967295
predeterminado: 8388608
No
collation_connection string
Predeterminado:
MySQL 8.0 y versiones posteriores: utf8mb4_0900_ai_ci

Consulta la sección Consejos para obtener más información sobre esta marca.

No
collation_server string
Predeterminado:
MySQL 5.7: utf8_general_ci
MySQL 8.0 y versiones posteriores: utf8mb4_0900_ai_ci
No
character_set_client string

default:
MySQL 5.7: utf8
MySQL 8.0 y versiones posteriores: utf8mb4

Consulta la sección Consejos para obtener más información sobre esta marca.

No
character_set_connection string
default:
MySQL 5.7: utf8
MySQL 8.0 y versiones posteriores: utf8mb4

Consulta la sección Consejos para obtener más información sobre esta marca.

No
character_set_results string
utf8 u utf8mb4
predeterminado:
MySQL 5.7: utf8
MySQL 8.0 y versiones posteriores: utf8mb4

Consulta la sección Consejos para obtener más información sobre esta marca.

No
character_set_server string
utf8 u utf8mb4 (recomendado)
check_proxy_users boolean
on | off
predeterminado: off
No
cloudsql_allow_analyze_table boolean on | off
default: off
No
cloudsql_iam_authentication boolean on | off
Predeterminado: off
Compatible con MySQL 5.7 y versiones posteriores para Cloud SQL.
No
cloudsql_ignore_innodb_encryption boolean on | off
default: off
No
cloudsql_mysql_audit_data_masking_cmds string
"", dql, dml, ddl, dcl, show, call, create_udf, drop_function, create_procedure, create_function, drop_procedure, alter_procedure, alter_function, create_trigger, drop_trigger, create_event, alter_event, drop_event, create_db, drop_db, alter_db, create_user, drop_user, rename_user, alter_user, create_table, create_index, alter_table, drop_table, drop_index, create_view, drop_view, rename_table, update, insert, insert_select, delete, truncate, replace, replace_select, delete_multi, update_multi, load, select, call_procedure, connect, disconnect, grant, revoke, revoke_all, show_triggers, show_create_proc, show_create_func, show_procedure_code, show_function_code, show_create_event, show_events, show_create_trigger, show_grants, show_binlog_events, show_relaylog_events

default: create_user, alter_user, grant y update
No
cloudsql_mysql_audit_data_masking_regex string
max_string_length: 2048
predeterminado: haz clic en aquí.
No
cloudsql_mysql_audit_log_write_period integer
0...5000 milisegundos
valor predeterminado: 500 milisegundos
No
cloudsql_mysql_audit_max_query_length integer
-1...1073741824
predeterminado: -1
No
cloudsql_vector boolean on | off
predeterminado: off
cloudsql_vector_max_mem_size integer
1073741824...innodb_buffer_pool_size/2
Valor predeterminado: 1073741824 en bytes
completion_type enumeration
NO_CHAIN (predeterminado), CHAIN o RELEASE
No
concurrent_insert enumeration
NEVER, AUTO (predeterminado) o ALWAYS
No
connect_timeout integer
2 ... 31536000
predeterminado: 10
No
cte_max_recursion_depth integer
0 ... 4294967295
predeterminado: 1000
No
default_authentication_plugin string
mysql_native_password|caching_sha2_password
default_password_lifetime integer 0...65535
default: 0
No
default_time_zone string
Hay dos formas de especificar zonas horarias: como desfases de zona horaria y como nombres de zona horaria. Por ejemplo, +00:00 es la diferencia horaria de Londres (que está en la zona horaria UTC) y Europe/London es el nombre de su zona horaria.

Los valores se usan para especificar las diferencias horarias, que van de -12:59 a +13:00. Es obligatorio incluir ceros iniciales.

Si se usan nombres de zonas horarias, se admite el ajuste automático al horario de verano. No se admite el uso de desfases de zona horaria. Consulta una lista de nombres de zonas horarias que admite Cloud SQL para MySQL. Debes actualizar este indicador manualmente en la instancia principal y en todas las réplicas de lectura para tenerlo en cuenta.

Para definir la zona horaria sin reiniciar la instancia de Cloud SQL, usa el comando set time_zone=timezone_offset o timezone_name con la marca init_connect.

default_week_format integer
0 ... 7
predeterminado: 0
No
delay_key_write enumeration
OFF, ON (predeterminado) o ALL
No
disconnect_on_expired_password boolean on | off
default: on
div_precision_increment integer
0 ... 30
predeterminado: 4
No
end_markers_in_json boolean
on | off
predeterminado: off
No
eq_range_index_dive_limit integer
0 ... 2147483647
No
event_scheduler boolean
on | off

Si usas el programador de eventos, configura tu instancia con una política de activación de ALWAYS para asegurarte de que los eventos programados se ejecuten.

Consulta la sección Consejos para obtener más información sobre esta marca.

No
expire_logs_days integer
0 ... 99
El valor predeterminado es 0, lo que significa que no se elimina automáticamente.

Nota: Esta marca no se admite en MySQL 8.4. En su lugar, usa binlog_expire_logs_seconds. Consulta la sección Consejos para obtener más información sobre esta marca.

No
explicit_defaults_for_timestamp boolean
on | off

No
flush_time integer
0 ... 31536000
predeterminado: 0
No
foreign_key_checks boolean
on | off
predeterminado: on

Consulta la sección Consejos para obtener más información sobre esta marca.

No
ft_max_word_len integer
10 ... 252
ft_min_word_len integer
1 ... 16
ft_query_expansion_limit integer
0 ... 1000
ft_stopword_file string
general_log boolean
on | off

Consulta la sección Consejos para obtener más información sobre los registros generales.

No
generated_random_password_length integer 5-255
default: 20
No
group_concat_max_len integer
4 ... 17179869184
No
gtid_executed_compression_period integer
0 ... 4294967295
predeterminado (hasta la versión 8.0.22): 1000
predeterminado (versión 8.0.23 o posterior): 0
No
histogram_generation_max_mem_size integer
1000000 ... 4294967295
predeterminado: 20000000
No
init_connect string No
innodb_adaptive_hash_index boolean
on | off
No
innodb_adaptive_hash_index_parts integer
1 ... 512
innodb_adaptive_max_sleep_delay integer
0 ... 1000000
No
innodb_autoextend_increment integer
1 ... 1000
No
innodb_autoinc_lock_mode integer
0 ... 2
innodb_buffer_pool_chunk_size integer
1048576 ... (innodb_buffer_pool_size/innodb_buffer_pool_instances)

El valor de este indicador depende de innodb_buffer_pool_size y innodb_buffer_pool_instances. MySQL puede ajustar automáticamente el valor de innodb_buffer_pool_chunk_size en función de estas dos marcas.

innodb_buffer_pool_dump_pct integer
1 ... 100
Valor predeterminado: 25
No
innodb_buffer_pool_dump_at_shutdown boolean
on | off
No
innodb_buffer_pool_dump_now boolean
on | off

Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_buffer_pool_instances integer
1 ... 64
innodb_buffer_pool_load_abort boolean
on | off

Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_buffer_pool_load_at_startup boolean
on | off
innodb_buffer_pool_load_now boolean
on | off

Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_buffer_pool_size integer

Para definir esta marca en MySQL 5.6, es necesario reiniciar. Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_change_buffer_max_size integer
0 ... 50
No
innodb_change_buffering string

Opciones: none, inserts, deletes, changes, purges, all.

No
innodb_checksum_algorithm string

Opciones: crc32, strict_crc32, innodb, strict_innod, none, strict_none.

No
innodb_cloudsql_optimized_write boolean

Esta marca solo está disponible para las instancias con la edición Cloud SQL Enterprise Plus. Para obtener más información sobre esta marca, consulta la sección Consejos.

innodb_cmp_per_index_enabled boolean
on | off
No
innodb_commit_concurrency integer
0 ... 1000
innodb_compression_failure_threshold_pct integer
0 ... 100
No
innodb_compression_level integer
0 ... 9
No
innodb_compression_pad_pct_max integer
0 ... 75
No
innodb_concurrency_tickets integer
1 ... 4294967295
No
innodb_deadlock_detect boolean
on | off

Compatible con MySQL 5.7 y versiones posteriores.

Predeterminado: on

No
innodb_disable_sort_file_cache boolean
on | off
No
innodb_doublewrite_batch_size integer
0 ... 256
Predeterminado: 0
innodb_doublewrite_files integer
2 ... 128
innodb_doublewrite_pages integer
4 ... 512
Predeterminado: 64
innodb_file_per_table boolean
on | off

Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_fill_factor integer
10 ... 100
No
innodb_flush_log_at_timeout double
0.0001... 2700
Predeterminado: 1

Compatible con MySQL 5.7 y versiones posteriores.

Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_flush_log_at_trx_commit integer
1, 2
Predeterminado: 1

Si promueves una réplica con esta marca habilitada, se quitará automáticamente, por lo que la réplica promovida tendrá una durabilidad completa de forma predeterminada. Para usar esta marca con una réplica promocionada, puedes actualizar la marca a la réplica después de la promoción.

Consulta la sección Consejos para obtener más información sobre esta marca.

No
innodb_flush_neighbors enumeration
0 ... 2
Valores predeterminados:
  • MySQL 5.6: 0
  • MySQL 5.7 y versiones posteriores: 2
  • No
    innodb_flush_sync boolean
    on | off
    No
    innodb_ft_aux_table string

    Consulta la sección Consejos para obtener más información sobre esta marca.

    innodb_ft_cache_size integer
    1600000 ... 80000000
    innodb_ft_enable_diag_print boolean
    on | off
    No
    innodb_ft_enable_stopword boolean
    on | off
    No
    innodb_ft_max_token_size integer
    10 ... 252
    innodb_ft_min_token_size integer
    0 ... 16
    innodb_ft_num_word_optimize integer
    1000 ... 10000
    No
    innodb_ft_result_cache_limit integer
    1000000 ... 4294967295
    No
    innodb_ft_server_stopword_table string No
    innodb_ft_sort_pll_degree integer
    1 ... 32
    innodb_ft_total_cache_size integer
    32000000 ... 1600000000
    innodb_ft_user_stopword_table string No
    innodb_io_capacity integer
    100 ... 100000
    Valor predeterminado: 5000

    Para obtener más información sobre cómo configurar el rendimiento del disco, consulta la tabla VMs E2 en el artículo Configurar discos para cumplir los requisitos de rendimiento.

    No
    innodb_io_capacity_max integer
    100 ... 100000
    Valor predeterminado: 10000

    Para obtener más información sobre cómo configurar el rendimiento del disco, consulta la tabla VMs E2 en el artículo Configurar discos para cumplir los requisitos de rendimiento.

    No
    innodb_large_prefix boolean
    on | off

    Solo se admite en MySQL 5.6.

    No
    innodb_lock_wait_timeout integer
    1 ... 1073741824
    No
    innodb_log_buffer_size integer
    262144 ... 4294967295
    innodb_log_checksums boolean
    on | off
    predeterminado: on
    No
    innodb_log_file_size integer
    MySQL 5.6: 1048576 ... 274877906944
    MySQL 5.7 y versiones posteriores: 4194304 ... 274877906944
    innodb_log_spin_cpu_abs_lwm integer
    0 ... 4294967295
    default: 80
    No
    innodb_log_spin_cpu_pct_hwm integer
    0 ... 100
    default: 50
    No
    innodb_log_wait_for_flush_spin_hwm integer
    0 ... 4294967295
    default: 400
    No
    innodb_log_write_ahead_size integer
    512 ... 65536
    default: 8192
    No
    innodb_lru_scan_depth integer
    100 ... 9223372036854775807
    No
    innodb_max_dirty_pages_pct float
    0 ... 99.99
    predeterminado: 90
    No
    innodb_max_dirty_pages_pct_lwm float
    0 ... 99.99
    predeterminado: 10
    No
    innodb_max_purge_lag integer
    0 ... 4294967295
    default: 0
    No
    innodb_max_undo_log_size integer
    10485760 ... 9223372036854775807
    default: 1073741824
    No
    innodb_max_purge_lag_delay integer
    0 ... 10000000
    default: 0
    No
    innodb_monitor_disable string No
    innodb_monitor_enable string No
    innodb_monitor_reset string
    counter, module, pattern, all
    No
    innodb_monitor_reset_all enumeration
    Valores válidos: counter, module, pattern y all
    No
    innodb_old_blocks_pct integer
    5 ... 95
    No
    innodb_old_blocks_time integer
    0 ... 4294967295
    No
    innodb_online_alter_log_max_size integer
    65536 ... 9223372036854775807
    No
    innodb_open_files integer
    100 ... 2147483647
    Predeterminado:
    MySQL 5.7: 2000
    MySQL 8.0 y versiones posteriores: 4000
    8.0.28: No
    8.0.27: Sí
    innodb_optimize_fulltext_only boolean
    on | off
    No
    innodb_page_cleaners integer
    1 ... 64
    Compatible con MySQL 5.7 y versiones posteriores. En MySQL 5.7 y 8.0, el valor predeterminado es 4. En MySQL 8.4, el valor predeterminado es igual al valor configurado para la marca innodb_buffer_pool_instances.
    innodb_parallel_read_threads integer
    1 ... 256
    predeterminado: 4
    No
    innodb_print_all_deadlocks boolean
    on | off
    predeterminado: off
    No
    innodb_print_ddl_logs boolean
    on | off
    No
    innodb_purge_batch_size integer
    1 ... 5000
    predeterminado: 300
    No
    innodb_purge_rseg_truncate_frequency integer
    1 ... 128
    predeterminado: 128
    No
    innodb_purge_threads integer
    1 ... 32
    Valores predeterminados:
  • MySQL 5.6: 1
  • MySQL 5.7 y versiones posteriores: 4
  • innodb_random_read_ahead boolean
    on | off
    No
    innodb_read_ahead_threshold integer
    0 ... 64
    No
    innodb_read_io_threads integer
    1 ... 64
    innodb_redo_log_capacity integer
    MySQL 8.0.33 y versiones anteriores: 8388608 (8 MB) ... 137438953472 (128 GB) MySQL 8.0.34 y versiones posteriores: 8388608 (8 MB) ... 549755813888 (512 GB)

    Para obtener más información sobre esta marca, consulta la sección Consejos.

    No
    innodb_replication_delay integer
    0 ... 4294967295
    No
    innodb_rollback_on_timeout boolean
    on | off
    innodb_rollback_segments integer
    1 ... 128
    No
    innodb_segment_reserve_factor float
    .03 ... 40
    default: 12.5
    No
    innodb_sort_buffer_size integer
    65536 ... 67108864
    innodb_spin_wait_delay integer
    MySQL 5.7: 0 ... 1000000
    MySQL 8.0.13 o versiones posteriores: 0 ... 1000
    Valor predeterminado: 6
    No
    innodb_stats_auto_recalc boolean
    on | off
    No
    innodb_stats_include_delete_marked boolean
    on | off
    predeterminado: off
    No
    innodb_stats_method enumeration
    nulls_equal | nulls_unequal | nulls_ignored
    No
    innodb_stats_on_metadata boolean
    on | off
    No
    innodb_stats_persistent boolean
    on | off
    No
    innodb_stats_persistent_sample_pages integer
    1 ... 9223372036854775807
    No
    innodb_stats_sample_pages integer
    1 ... 9223372036854775807
    No
    innodb_stats_transient_sample_pages integer
    1 ... 9223372036854775807
    No
    innodb_status_output boolean
    on | off
    No
    innodb_status_output_locks boolean
    on | off
    No
    innodb_strict_mode boolean
    on | off
    No
    innodb_sync_array_size 1 ... 1024

    El valor predeterminado es 1.

    innodb_sync_spin_loops integer
    0 ... 4294967295
    predeterminado: 30
    No
    innodb_table_locks boolean
    on | off
    predeterminado: on
    No
    innodb_thread_concurrency integer
    0 ... 1000
    No
    innodb_thread_sleep_delay integer
    0 ... 1000000
    No
    innodb_undo_log_truncate boolean
    on | off
    predeterminado: on
    No
    innodb_use_native_aio boolean
    on | off
    predeterminado: on
    innodb_write_io_threads integer
    1 ... 64
    interactive_timeout integer
    1 ... 31536000
    No
    internal_tmp_disk_storage_engine enumeration
    INNODB | MYISAM
    Valor predeterminado: INNODB
    No
    internal_tmp_mem_storage_engine enumeration
    MEMORY, TempTable
    .
    No
    join_buffer_size integer
    128 ... 9223372036854775807
    No
    keep_files_on_create boolean
    on | off
    predeterminado: off
    No
    key_buffer_size integer
    4096 ... 4294967295
    default: 8388608
    No
    key_cache_age_threshold integer
    100 ... 9223372036854775807
    default: 300
    No
    key_cache_block_size integer
    512 ... 16384
    default: 1024
    No
    key_cache_division_limit integer
    1 ... 100
    default: 100
    No
    lc_times_names string
    en_US | cs_CZ | da_DK | nl_NL | et_EE | fr_FR | de_DE | el_GR | hu_HU | it_IT | ja_JP | ko_KR | no_NO | nb_NO | pl_PL | pt_PT | ro_RO | ru_RU | sr_RS | sk_SK | es_ES | sv_SE | uk_UA
    Valor predeterminado: en_US
    No
    local_infile boolean
    on | off
    No
    lock_wait_timeout integer
    1 ... 31536000
    No
    log_bin_trust_function_creators boolean
    on | off
    No
    log_output set
    FILE | TABLE | NONE
    No
    log_error_verbosity integer
    1 ... 3
    Valor predeterminado:
    MySQL 5.7: 3
    MySQL 8.0 y versiones posteriores: 2
    No
    log_queries_not_using_indexes boolean
    on | off
    No
    log_slow_admin_statements boolean
    on | off
    predeterminado: off
    No
    log_slow_extra boolean
    on | off
    predeterminado: off
    No
    log_slow_replica_statements boolean
    on | off Valor predeterminado: off
    No
    log_slow_slave_statements boolean
    on | off Valor predeterminado: off
    No
    log_throttle_queries_not_using_indexes integer
    0 ... 9223372036854775807
    No
    log_timestamps string
    "UTC | SYSTEM"
    predeterminado: UTC
    No
    long_query_time float
    0 ... 30000000

    Cloud SQL permite definir esta marca en un valor inferior a 1 si es necesario.

    Si la marca log_queries_not_using_indexes también está habilitada, es posible que veas consultas con un tiempo inferior al especificado aquí.

    No
    lower_case_table_names 5.7 | 8.0 integer
    0 o 1
    Predeterminado: 0

    Si usa el valor predeterminado 0 para esta marca, los nombres de las tablas y las bases de datos distinguen entre mayúsculas y minúsculas. Si se define como 1, los nombres de las tablas y las bases de datos no distinguen entre mayúsculas y minúsculas.

    En las instancias de MySQL 5.7, puedes cambiar el valor de esta marca en cualquier momento. Si lo haces, asegúrate de entender cómo afecta el cambio a tus tablas y bases de datos.

    En las instancias de MySQL 8.0 y versiones posteriores, solo puedes asignar el valor que quieras a esta marca mientras se crea una instancia. Una vez que hayas definido este valor, no podrás cambiarlo. Además, en una instancia ya creada, no puedes cambiar el valor de esta marca.

    Al crear réplicas de lectura para instancias de MySQL 5.7, MySQL 8.0 o MySQL 8.4, la réplica hereda el valor de esta marca de la principal.

    mandatory_roles string role name
    default: empty string
    No
    master_verify_checksum boolean
    on | off Valor predeterminado: off
    No
    max_allowed_packet integer
    16384 ... 1073741824

    Este valor debe ser un múltiplo de 1024 si sql_mode=TRADITIONAL o sql_mode=STRICT_ALL_TABLES.

    No
    max_binlog_cache_size integer
    4096 ... 4294967296
    default: 4294967296
    No
    max_binlog_size integer
    4096 ... 1073741824
    No
    max_binlog_stmt_cache_size integer
    4096 ... 4294967296
    default: 4294967296
    No
    max_connect_errors integer
    1 ... 9223372036854775807
    default: 100
    No
    max_connections integer
    1 ... 100000
    No
    max_digest_length integer
    0 ... 1048576
    max_error_count integer
    0 ... 65535
    Predeterminado:
    MySQL 5.7 o versiones anteriores: 64
    MySQL 8.0 y versiones posteriores: 1024
    No
    max_execution_time integer
    0 ... 9223372036854775807
    No
    max_heap_table_size integer
    16384 ... 67108864

    Consulta la sección Consejos para obtener más información sobre esta marca.

    No
    max_join_size integer
    16 ... 9223372036854775807
    No
    max_length_for_sort_data integer
    4 ... 8388608
    No
    max_points_in_geometry integer
    3 ... 1048576
    No
    max_prepared_stmt_count integer
    0 ... 1048576
    No
    max_seeks_for_key integer
    1 ... 9223372036854775807
    No
    max_sort_length integer
    4 ... 8388608
    No
    max_sp_recursion_depth integer
    0 ... 255
    No
    max_user_connections integer
    0 ... 4294967295
    No
    max_write_lock_count integer
    1 ... 9223372036854775807
    No
    min_examined_row_limit integer
    0 ... 4294967295
    default: 0
    No
    myisam_data_pointer_size integer
    2...7
    valor predeterminado: 6
    No
    myisam_max_sort_file_size integer
    0...9223372036853727232
    valor predeterminado: 9223372036853727232
    No
    myisam_mmap_size integer
    7...9223372036854775807
    valor predeterminado: 9223372036854775807
    myisam_sort_buffer_size integer
    4096...4294967295
    valor predeterminado: 8388608
    No
    myisam_stats_method string
    "nulls_unequal, nulls_equal, nulls_ignored"
    predeterminado: nulls_unequal
    No
    myisam_use_mmap boolean
    on | off
    predeterminado: off
    No
    mysql_native_password_proxy_users boolean
    on | off
    predeterminado: off
    No
    net_buffer_length integer
    1024 ... 1048576
    predeterminado: 16384
    No
    net_read_timeout integer
    30 ... 4294967295
    No
    net_retry_count integer
    10 ... 4294967295
    No
    net_write_timeout integer
    60 ... 4294967295
    No
    ngram_token_size integer
    1 ... 10
    predeterminado: 2
    optimizer_prune_level integer
    0 ... 1
    No
    optimizer_search_depth integer
    0 ... 62
    No
    optimizer_switch multi-value repeated string

    Consulta la sección Consejos para obtener más información sobre las marcas de varios valores.

    No
    optimizer_trace multi-value repeated string
    enabled=on, enabled=off, one_line=on, one_line=off

    Consulta la sección Consejos para obtener más información sobre las marcas de varios valores.

    No
    optimizer_trace_features multi-value repeated string

    Consulta la sección Consejos para obtener más información sobre las marcas de varios valores.

    No
    optimizer_trace_max_mem_size integer
    0 ... 9223372036854775807
    No
    optimizer_trace_offset integer
    -9223372036854775808 ... 9223372036854775807
    No
    parser_max_mem_size integer
    10000000 ... 9223372036854775807
    No
    password_history integer 0-4294967295
    Valor predeterminado: 0
    No
    password_require_current boolean on | off
    Valor predeterminado: off
    No
    password_reuse_interval integer 0-4294967295
    Valor predeterminado: 0
    No
    performance_schema boolean
    on | off

    Valor predeterminado: off para MySQL 5.6, 5.7, 8.0 y 8.4 si la RAM de la instancia es inferior a 15 GB.

    Valor predeterminado: on para MySQL 8.0 y versiones posteriores si la RAM de la instancia es superior a 15 GB

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_accounts_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_digests_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_error_size integer
    0 ... 1048576
    performance_schema_events_stages_history_long_size integer
    -1 ... 1048576
    performance_schema_events_stages_history_size integer
    -1 ... 1024

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_events_statements_history_long_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_events_statements_history_size integer
    -1 ... 1024

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_events_transactions_history_long_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_events_transactions_history_size integer
    -1 ... 1024

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_events_waits_history_long_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_events_waits_history_size integer
    -1 ... 1024

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_hosts_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_cond_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_cond_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_digest_length integer
    0 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_digest_sample_age integer
    0 ... 1048576
    predeterminado: 60
    No
    performance_schema_max_file_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_file_handles integer
    0 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_file_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_index_stat integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_memory_classes integer
    0 ... 1024

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_metadata_locks integer
    -1 ... 104857600

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_mutex_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_mutex_instances integer
    -1 ... 104857600

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_prepared_statements_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_program_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_rwlock_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_rwlock_instances integer
    -1 ... 104857600

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_socket_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_socket_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_sql_text_length integer
    0 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_stage_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_statement_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_statement_stack integer
    1 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_table_handles integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_table_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_table_lock_stat integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_thread_classes integer
    0 ... 256

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_max_thread_instances integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_session_connect_attrs_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_setup_actors_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_setup_objects_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    performance_schema_users_size integer
    -1 ... 1048576

    Consulta la sección Consejos para obtener más información sobre las marcas de performance_schema.

    preload_buffer_size integer
    1024 ... 1073741824
    predeterminado: 32768
    No
    query_alloc_block_size integer
    1024 ... 4294967295
    No
    query_cache_limit integer
    0 ... 223338299392

    Esta marca no está disponible en MySQL 8.0 ni en versiones posteriores, ya que la caché de consultas quedó obsoleta en MySQL 5.7.20 y se eliminó en MySQL 8.0.

    No
    query_cache_min_res_unit integer
    0 ... 9223372036854775807

    Esta marca no está disponible en MySQL 8.0 ni en versiones posteriores, ya que la caché de consultas quedó obsoleta en MySQL 5.7.20 y se eliminó en MySQL 8.0.

    No
    query_cache_size integer
    0 ... 223338299392

    Esta marca no está disponible en MySQL 8.0 ni en versiones posteriores, ya que la caché de consultas quedó obsoleta en MySQL 5.7.20 y se eliminó en MySQL 8.0.

    No
    query_cache_type enumeration
    0 ... 2

    Esta marca no está disponible en MySQL 8.0 ni en versiones posteriores, ya que la caché de consultas quedó obsoleta en MySQL 5.7.20 y se eliminó en MySQL 8.0.

    query_cache_wlock_invalidate boolean
    on | off

    Esta marca no está disponible en MySQL 8.0 ni en versiones posteriores, ya que la caché de consultas quedó obsoleta en MySQL 5.7.20 y se eliminó en MySQL 8.0.

    No
    query_prealloc_size integer
    8192 ... 9223372036854775807
    No
    range_alloc_block_size integer
    4096 ... 4294967295
    No
    range_optimizer_max_mem_size integer
    0 ... 9223372036854775807
    No
    size_buffer_size integer
    8192 ... 2147483647
    No
    read_only boolean
    on | off

    No tiene ningún efecto en las réplicas.

    No
    read_rnd_buffer_size integer
    1 ... 2147483647
    No
    regexp_stack_limit integer
    0 ... 2147483647
    No
    regexp_time_limit integer
    0 ... 2147483647
    predeterminado: 32
    No
    replica_checkpoint_group integer
    32 ... 524280
    El valor predeterminado es 512.

    Esta marca no afecta a las réplicas que no tienen habilitado el multihilo.

    No
    replica_checkpoint_period integer
    1 ... 4294967295
    El valor predeterminado es 300.

    La unidad es milisegundos.

    No
    replica_compressed_protocol boolean
    on | off
    No
    replica_net_timeout integer
    1 ... 31536000

    La unidad es segundos.

    No
    replica_parallel_type enumeration
    DATABASE, LOGICAL_CLOCK
    Valor predeterminado:
    MySQL 8.0.26 o versiones anteriores: DATABASE
    MySQL 8.0.27 o versiones posteriores: LOGICAL_CLOCK

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    replica_parallel_workers integer

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    replica_pending_jobs_size_max integer

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    replica_preserve_commit_order boolean

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    replica_skip_errors string
    Valor predeterminado: OFF

    Para obtener más información sobre esta marca, consulta la sección Consejos.

    replica_sql_verify_checksum boolean
    on | off
    No
    replica_transaction_retries integer
    0 ... 9223372036854775807
    No
    replica_type_conversions String
    values: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED
    No
    replicate_do_db string

    Para obtener más información sobre cómo usar esta marca, consulta la sección Filtros de réplica.

    No
    replicate_do_table string

    Para obtener más información sobre cómo usar esta marca, consulta la sección Filtros de réplica.

    No
    replicate_ignore_db string

    Para obtener más información sobre cómo usar esta marca, consulta la sección Filtros de réplica.

    No
    replicate_ignore_table string

    Para obtener más información sobre cómo usar esta marca, consulta la sección Filtros de réplica.

    No
    replicate_wild_do_table string

    Para obtener más información sobre cómo usar esta marca, consulta la sección Filtros de réplica.

    No
    replicate_wild_ignore_table string

    Para obtener más información sobre cómo usar esta marca, consulta la sección Filtros de réplica.

    No
    rpl_read_size integer
    8192 ... 4294959104
    predeterminado: 8192
    No
    schema_definition_cache integer
    256 ... 524288
    predeterminado: 256
    No
    session_track_gtids string
    OFF | OWN_GTID | ALL_GTIDS
    predeterminado: OFF
    No
    session_track_schema boolean
    on | off
    predeterminado: on
    No
    session_track_state_change boolean
    on | off
    predeterminado: off
    No
    session_track_transaction_info string
    OFF | STATE | CHARACTERISTICS
    predeterminado: OFF
    No
    sha256_password_proxy_users boolean
    on | off
    predeterminado: off
    No
    show_create_table_verbosity boolean
    on | off
    predeterminado: off
    No
    show_compatibility_56 boolean
    on | off

    Solo se admite en MySQL 5.7.

    No
    skip_character_set_client_handshake boolean
    on | off
    predeterminado: off
    skip_show_database flag
    on | off
    slave_checkpoint_group integer
    32 ... 524280
    El valor predeterminado es 512.

    Esta marca no afecta a las réplicas que no tienen habilitado el multihilo.

    No
    slave_checkpoint_period integer
    1 ... 4294967295
    El valor predeterminado es 300.

    La unidad es milisegundos.

    No
    slave_compressed_protocol boolean
    on | off
    No
    slave_net_timeout integer
    1 ... 31536000

    La unidad es segundos.

    No
    slave_parallel_type enumeration
    DATABASE, LOGICAL_CLOCK
    Valor predeterminado:
    MySQL 8.0.26 o versiones anteriores: DATABASE
    MySQL 8.0.27 o versiones posteriores: LOGICAL_CLOCK

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    slave_parallel_workers integer

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    slave_preserve_commit_order boolean

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    slave_pending_jobs_size_max integer

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo.

    No
    slave_skip_errors string
    Valor predeterminado: OFF

    Para obtener más información sobre esta marca, consulta la sección Consejos.

    slave_sql_verify_checksum boolean
    on | off
    No
    slave_transaction_retries integer
    0 ... 9223372036854775807
    No
    slave_type_conversions string
    values: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED
    No
    slow_launch_time Integer
    0 ... 31536000
    Predeterminado: 2
    No
    slow_query_log boolean
    on | off

    Consulta la sección Consejos para obtener más información sobre los registros de consultas lentas.

    No
    sort_buffer_size integer
    32768 ... 9223372036854775807
    No
    source_verify_checksum boolean
    on | off
    Valor predeterminado: off
    No
    sql_mode string

    Consulta los modos SQL del servidor en la documentación de MySQL para ver los valores permitidos, incluidos los modos combinados, como ANSI. NO_DIR_IN_CREATE no se admite.

    Cloud SQL para MySQL no admite valores vacíos para la marca sql_mode. En lugar de usar un valor vacío, asigna a esta marca el modo NO_ENGINE_SUBSTITUTION.

    No
    sql_require_primary_key boolean
    on | off
    Valor predeterminado: off
    No
    sql_select_limit integer 0...18446744073709551615 Valor predeterminado de
    : 18446744073709551615

    Consulta la sección Consejos para obtener más información sobre esta marca.

    No
    stored_program_cache integer
    16 ... 524288
    No
    stored_program_definition_cache integer
    256 ... 524288
    Predeterminado: 256
    No
    sync_binlog integer
    0 ... 4294967295

    El ajuste predeterminado 1 permite sincronizar el registro binario con el disco antes de que se confirmen las transacciones.

    Si promueves una réplica con esta marca habilitada, se quitará automáticamente, por lo que la réplica promovida tendrá una durabilidad completa de forma predeterminada. Para usar esta marca con una réplica promocionada, puedes actualizar la marca a la réplica después de la promoción.

    Consulta la sección Consejos para obtener más información sobre esta marca.

    No
    sync_master_info integer
    0 ... 4294967295
    Valor predeterminado: 10000
    No
    sync_relay_log integer
    0 ... 4294967295
    Predeterminado: 10000
    No
    sync_relay_log_info integer
    0 ... 4294967295
    Predeterminado: 10000
    No
    sync_source_info integer
    0 ... 4294967295
    Valor predeterminado: 10000
    No
    sysdate_is_now boolean
    on | off
    predeterminado: off
    table_definition_cache integer
    400 ... 524288
    No
    tablespace_definition_cache integer
    256 ... 524288
    Predeterminado: 256
    No
    table_open_cache integer
    1 ... 524288
    No
    table_open_cache_instances integer
    1 ... 64
    temptable_max_mmap integer
    0 ... 68719476736
    Predeterminado: 1073741824
    No
    temptable_max_ram integer
    2097152 ... 68719476736
    Predeterminado: 1073741824
    No
    thread_cache_size integer
    0 ... 16384
    No
    thread_stack integer
    131072 ... 9223372036854775807
    tls_version String

    Versión 5.7 a 8.0.27: TLSv1, TLSv1.1
    Versión 8.0.28 o posterior: TLSv1.2
    Versión 5.7:

    Versión 8.0 o posterior: no
    tmp_table_size integer
    1024 ... 67108864

    Consulta la sección Consejos para obtener más información sobre esta marca.

    No
    transaction_alloc_block_size integer
    1024 ... 131072
    No
    transaction_isolation enumeration
    READ-UNCOMMITTED | READ-COMMITTED | REPEATABLE-READ | SERIALIZABLE
    transaction_prealloc_size integer
    1024 ... 131072
    No
    transaction_write_set_extraction enumeration

    Para obtener información sobre cómo usar esta marca y sus valores aceptables, consulta el artículo Configurar la replicación en paralelo. Esta marca no es compatible con MySQL 8.4.

    No
    unique_checks boolean
    on | off
    predeterminado: on

    Consulta la sección Consejos para obtener más información sobre esta marca.

    No
    updatable_views_with_limit integer
    0 ... 1
    No
    wait_timeout integer
    1 ... 31536000
    No
    windowing_use_high_precision boolean
    on | off
    Valor predeterminado: on
    No

    Nombres de zonas horarias

    En esta sección, se describen los nombres de las zonas horarias que admite Cloud SQL para MySQL.

    En la tabla de esta sección se muestra lo siguiente:

    • Nombre de la zona horaria: el nombre que admite Cloud SQL para MySQL.
    • STD: la diferencia de la zona horaria en hora estándar (STD).
    • Horario de verano: la diferencia horaria en horario de verano.
    • Nombres de sinónimos: nombres de zonas horarias que puede que quieras usar, pero que no son compatibles con Cloud SQL para MySQL. Si se da esta situación, utiliza el nombre de la zona horaria correspondiente.
    Nombre de la zona horaria STD DST Nombres de sinónimos
    Africa/Cairo +02:00 +02:00 Egipto
    Africa/Casablanca +01:00 +00:00
    Africa/Harare +02:00 +02:00 Africa/Maputo
    Africa/Monrovia +00:00 +00:00
    Africa/Nairobi +03:00 +03:00 Africa/Addis_Ababa
    Africa/Asmera
    Africa/Dar_es_Salaam
    Africa/Djibouti
    Africa/Kampala
    Africa/Mogadishu
    Indian/Antananarivo
    Indian/Comoro
    Indian/Mayotte
    Africa/Tripoli +02:00 +02:00 Libia
    Africa/Windhoek +02:00 +02:00
    America/Araguaina −03:00 −03:00
    America/Asuncion −04:00 −03:00
    America/Bogota −05:00 −05:00
    América/Buenos_Aires −03:00 −03:00 America/Argentina/Buenos_Aires
    America/Caracas −04:00 −04:00
    America/Chicago −06:00 −05:00
    America/Chihuahua −07:00 −06:00 America/Ojinaga
    America/Cuiaba −04:00 −04:00
    America/Denver −07:00 −06:00 America/Shiprock
    Navajo
    MST7MDT
    US/Mountain
    America/Detroit −05:00 −04:00
    America/Fortaleza −03:00 −03:00
    America/Guatemala −06:00 −06:00
    America/Halifax −04:00 −03:00 Canada/Atlantic
    America/Los_Angeles −08:00 −07:00
    America/Manaus −04:00 −04:00 Brasil/Oeste
    America/Matamoros −06:00 −05:00
    America/Mexico_City −06:00 −05:00
    America/Monterrey −06:00 −05:00
    America/Montevideo −03:00 −03:00
    America/New_York −05:00 −04:00
    America/Phoenix −07:00 −07:00 US/Arizona
    MST
    America/Creston
    America/Santiago −04:00 −03:00 Chile (continental)
    America/Sao_Paolo −03:00 −03:00
    America/Tijuana −08:00 −07:00 México/BajaNorte
    America/Ensenada
    America/Santa_Isabel
    Asia/Amman +02:00 +03:00
    Asia/Ashgabat +05:00 +05:00 Asia/Ashkhabad
    Asia/Baghdad +03:00 +03:00
    Asia/Baku +04:00 +04:00
    Asia/Bangkok +07:00 +07:00 Asia/Phnom_Penh
    Asia/Vientiane
    Asia/Beirut +02:00 +03:00
    Asia/Calcutta +05:30 +05:30 Asia/Calcuta
    Asia/Damascus +02:00 +03:00
    Asia/Dhaka +06:00 +06:00 Asia/Dacca
    Asia/Irkutsk +08:00 +08:00
    Asia/Jerusalem +02:00 +03:00 Asia/Tel_Aviv
    Israel
    Asia/Kabul +04:30 +04:30
    Asia/Karachi +05:00 +05:00
    Asia/Katmandú +05:45 +05:45 Asia/Katmandu
    Asia/Calcuta +05:30 +05:30
    Asia/Krasnoyarsk +07:00 +07:00
    Asia/Magadan +11:00 +11:00
    Asia/Muscat +04:00 +04:00 Asia/Dubai
    Asia/Novosibirsk +07:00 +07:00
    Asia/Riyadh +03:00 +03:00 Asia/Kuwait
    Antarctica/Syowa
    Asia/Aden
    Asia/Seoul +09:00 +09:00 ROK
    Asia/Shanghai +08:00 +08:00 Asia/Chongqing
    Asia/Chungking
    Asia/Harbin
    PRC
    Asia/Singapore +08:00 +08:00 Singapur
    Asia/Taipei +08:00 +08:00 Característica operativa del receptor
    Asia/Tehran +03:30 +04:30 Irán
    Asia/Tokyo +09:00 +09:00 Japón
    Asia/Ulaanbaatar +08:00 +08:00 Asia/Ulan_Bator
    Asia/Vladivostok +10:00 +10:00
    Asia/Yakutsk +09:00 +09:00
    Asia/Yerevan +04:00 +04:00
    Atlantic/Azores −01:00 +00:00
    Australia/Adelaide +09:30 +10:30 Australia/Sur
    Australia/Brisbane +10:00 +10:00 Australia/Queensland
    Australia/Darwin +09:30 +09:30 Australia/North
    Australia/Hobart +10:00 +11:00 Australia/Currie
    Australia/Tasmania
    Australia/Perth +08:00 +08:00 Australia/Oeste
    Australia/Sydney +10:00 +11:00 Australia/NSW
    Australia/ACT
    Australia/Canberra
    Brasil/Este −03:00 −03:00 America/Sao_Paulo
    Canadá (Terranova) −03:30 −02:30 America/St_Johns
    Canadá/Saskatchewan −06:00 −06:00 America/Regina
    Canadá (Yukón) −07:00 −07:00 America/Whitehorse
    Europe/Amsterdam +01:00 +02:00
    Europe/Athens +02:00 +03:00
    Europe/Dublin +01:00 +00:00 Eire
    Europe/Helsinki +02:00 +03:00 Europa/Mariehamn
    Europe/Istanbul +03:00 +03:00 Turquía
    Asia/Estambul
    Europe/Kaliningrad +02:00 +02:00
    Europe/Madrid +01:00 +02:00
    Europe/Moscow +03:00 +03:00 W-SU
    Europe/Paris +01:00 +02:00 MET
    CET
    Europe/Prague +01:00 +02:00 Europa/Bratislava
    Europa/Sarajevo +01:00 +02:00 Europe/Belgrade
    Europe/Ljubljana
    Europe/Podgorica
    Europe/Skopje
    Europe/Zagreb
    Pacific/Auckland +12:00 +13:00 NZ
    Antarctica/McMurdo
    Antarctica/South_Pole
    Pacific/Fiji +12:00 +13:00
    Pacific/Guam +10:00 +10:00 Pacific/Saipan
    Pacific/Honolulu −10:00 −10:00 US/Hawaii
    Pacific/Johnston
    HST
    Pacífico/Samoa −11:00 −11:00 Pacífico/Pago_Pago
    US/Samoa
    EE. UU./Alaska −09:00 −08:00 America/Anchorage
    America/Juneau
    America/Metlakatla
    America/Nome
    America/Sitka
    America/Yakutat
    EE. UU./Central −06:00 −05:00 America/Chicago
    EE. UU. (este) −05:00 −04:00 America/New_York
    EE. UU./Indiana (este) −05:00 −04:00 America/Indiana/Indianapolis
    America/Indianapolis
    America/Fort_Wayne
    EE. UU./Montañas Rocosas −07:00 −06:00 America/Denver
    EE. UU./Pacífico −08:00 −07:00 America/Los_Angeles
    UTC +00:00 +00:00 Etc/UTC
    Etc/UCT
    Etc/Universal
    Etc/Zulu

    Es posible que sea necesario actualizar las tablas de zonas horarias de Cloud SQL con los datos más recientes. Por ejemplo, un país puede pasar de un desfase de zona horaria de horario de verano a un desfase de horario estándar o puede introducir una nueva zona horaria.

    En cada lanzamiento de un agente de servicio crítico (CSA) para Cloud SQL, las tablas de zonas horarias se actualizan con los datos más recientes. Cuando esto ocurre, durante el periodo que no es de mantenimiento, se actualizan las instancias de réplica. Las instancias principales se actualizan durante la ventana de mantenimiento.

    Puedes esperar hasta el periodo de mantenimiento habitual de la versión de CSA o realizar un mantenimiento de autoservicio para actualizar las tablas de zonas horarias con los datos más recientes. Para obtener más información sobre cómo ver las versiones de mantenimiento disponibles, consulta Determinar la versión de mantenimiento de destino.

    Consejos para trabajar con marcas

    general_log, slow_query_log

    Para que tus registros general o slow query estén disponibles, habilita la marca correspondiente y asigna el valor FILE a la marca log_output. De esta forma, la salida del registro estará disponible en el visualizador de registros de la Google Cloud consola. Ten en cuenta que se aplican cargos de registro de Google Cloud Observability. Para minimizar el coste de almacenamiento de las instancias, los registros general y slow query del disco de la instancia se rotan cuando el archivo de registro tiene más de 24 horas (y no se han realizado cambios en ese periodo) o cuando supera los 100 MB. Los archivos de registro antiguos se eliminan automáticamente después de la rotación.

    Si log_output tiene el valor NONE, no podrás acceder a los registros. Si asignas el valor TABLE a log_output, el registro de salida se coloca en una tabla de la base de datos del sistema mysql. Puede consumir una cantidad considerable de espacio en disco. Si esta tabla se hace grande, puede afectar al tiempo de reinicio de la instancia o provocar que la instancia pierda la cobertura de su acuerdo de nivel de servicio. Por este motivo, no se recomienda la opción TABLE. Además, el contenido del registro no está disponible en el explorador de registros y no se rota. Si es necesario, puedes truncar tus tablas de registro mediante la API. Para obtener más información, consulta la página de referencia instances.truncateLog.

    expire_logs_days, binlog_expire_logs_seconds
    Si habilitas la recuperación a un momento dado, el periodo de caducidad de tus registros binarios se determinará en función del periodo de conservación de los registros de transacciones y de los valores de estas marcas. Puedes usar estas marcas para gestionar durante cuánto tiempo se almacenan los registros binarios en tus réplicas. La marca expire_logs_days se ha quitado de MySQL 8.4 y versiones posteriores. Para obtener más información, consulta la página sobre la conservación del registro de transacciones.
    innodb_buffer_pool_size

    El valor de esta marca es el tamaño del grupo de búferes en bytes. El tamaño del grupo de almacenamiento en búfer siempre debe ser igual o un múltiplo del valor que obtienes al multiplicar innodb_buffer_pool_chunk_size por innodb_buffer_pool_instances. Si cambias el tamaño del grupo de búferes a un valor que no sea igual o múltiplo de innodb_buffer_pool_chunk_size multiplicado por innodb_buffer_pool_instances, Cloud SQL ajustará el tamaño del grupo de búferes automáticamente. No puedes habilitar esta marca en instancias que tengan menos de 3840 MiB de RAM.

    No puedes configurar esta marca para los tipos de máquinas con núcleo compartido (f1_micro y g1_small). Para cambiar esta marca en MySQL 5.6, es necesario reiniciar.

    En Cloud SQL, los valores predeterminados, mínimos permitidos y máximos de la marca innodb_buffer_pool_size dependen de la memoria de la instancia. Estos valores se pueden calcular aproximadamente como un porcentaje de la RAM de la instancia. De forma predeterminada, el valor de esta marca suele ser cercano al valor máximo permitido. El porcentaje máximo de asignación aumenta con el tamaño de la instancia. El valor mínimo permitido suele ser aproximadamente el 20% de la memoria RAM de la instancia.

    Valores aproximados de esta marca:

    Intervalo de RAM de la instanciaMín. %Porcentaje predeterminadoPorcentaje máximo
    0-4,0 GB de RAM~34%
    4,0 GB - 7,5 GB~20%~34%~34%
    7,5 GB - 12 GB~20%~52%~52%
    De 12 a 24 GB~20%~67%~67%
    24 GB o más~20%~72%~72%

    Los valores exactos pueden variar. Para calcular el valor actual de tu instancia, puedes ejecutar la siguiente consulta:

      show global variables like 'innodb_buffer_pool_size';
      

    A continuación, se indican los valores mínimo, predeterminado y máximo permitidos para los tipos de máquinas.

    Tipo de máquina RAM de instancia (GB) Mínimo (GB)
    (% del total)
    Predeterminado (GB)
    (% del total)
    Máximo (GB)
    (% del total)
    db‑f1‑micro 0,6 - 0,053 -
    db‑g1‑small 1,7 - 0,625 -
    db-custom-1-3840 3,75 0,875
    (23%)
    1,375
    (37%)
    1,375
    (37%)
    db-custom-2-7680 7,5 1,5
    (20%)
    4
    (53%)
    4
    (53%)
    db-custom-4-15360 15 3
    (20%)
    10,5
    (70%)
    10,5
    (70%)
    db-custom-8-30720 30 6
    (20%)
    22
    (73%)
    22
    (73%)
    db-custom-16-61440 60 12
    (20%)
    44
    (73%)
    44
    (73%)
    db-custom-32-122880 120 24
    (20%)
    87
    (73%)
    87
    (73%)
    db-custom-64-245760 240 48
    (20%)
    173
    (72%)
    173
    (72%)
    db-custom-96-368640 360 72
    (20%)
    260
    (72%)
    260
    (72%)
    db-custom-2-13312 13 3
    (23%)
    9
    (69%)
    9
    (69%)
    db-custom-4-26624 26 6
    (23%)
    19
    (73%)
    19
    (73%)
    db-custom-8-53248 52 11
    (21%)
    38
    (73%)
    38
    (73%)
    db-custom-16-106496 104 21
    (20%)
    75
    (72%)
    75
    (72%)
    db-custom-32-212992 208 42
    (20%)
    150
    (72%)
    150
    (72%)
    db-custom-64-425984 416 84
    (20%)
    300
    (72%)
    300
    (72%)
    db-custom-96-638976 624 125
    (20%)
    450
    (72%)
    450
    (72%)

    innodb_cloudsql_optimized_write
    Esta marca solo está disponible para las instancias con la edición Cloud SQL Enterprise Plus. El valor predeterminado es ON.

    Esta marca mejora el rendimiento de escritura optimizando el algoritmo de vaciado, controlando los límites de vaciado y ajustando la actividad en segundo plano para priorizar las operaciones de escritura de la base de datos.

    En la mayoría de los casos prácticos, puedes disfrutar de un mejor rendimiento, como un mayor volumen de datos y una menor latencia, si habilitas esta marca. Sin embargo, si las operaciones de escritura de tu base de datos provocan una carga extremadamente pesada en el servidor, la marca puede retrasar algunas actividades en segundo plano. Este retraso puede provocar un pequeño aumento en el uso del disco, que disminuye automáticamente una vez que se reduce la carga.

    De forma predeterminada, la marca innodb_cloudsql_optimized_write está habilitada en todas las instancias nuevas y actualizadas de la edición Enterprise Plus de Cloud SQL. En las instancias de la edición Enterprise Plus de Cloud SQL, esta marca se habilita después de aplicar la actualización de mantenimiento relacionada.

    Si necesitas inhabilitar la marca, ejecuta el siguiente comando.

    gcloud sql instances patch INSTANCE_NAME \
     --database-flags="innodb_cloudsql_optimized_write=OFF"

    Para cambiar el valor de la marca, es necesario reiniciar la instancia.

    innodb_file_per_table

    En todas las versiones de MySQL 5.6 y posteriores, el valor predeterminado es ON.

    innodb_flush_log_at_trx_commit, sync_binlog
    Para que se cumpla el estándar ACID y se mantengan la durabilidad y la coherencia en una configuración de replicación, las marcas innodb_flush_log_at_trx_commit y sync_binlog deben tener el valor predeterminado 1. Si cambias el valor predeterminado, la durabilidad puede disminuir, lo que puede provocar incoherencias entre la instancia principal y las réplicas. Por lo tanto, la instancia pierde la cobertura de su acuerdo de nivel de servicio. Además, puede ocurrir lo siguiente:
    • Pérdida de datos en determinadas situaciones, como un fallo de una máquina virtual o una conmutación por error de una instancia de alta disponibilidad regional
    • Datos no sincronizados en el registro binario y en los archivos de datos de InnoDB
    • Pérdida o fallo de datos de PITR
    • Incoherencia de los datos entre una instancia principal y sus réplicas
    • Una interrupción de la replicación

    Si asignas a las marcas innodb_flush_log_at_trx_commit o sync_binlog valores distintos de los predeterminados en instancias principales, independientes y de alta disponibilidad, se reducirá la durabilidad.

    Si necesitas un mayor rendimiento para las réplicas de lectura, te recomendamos que asignes el valor innodb_flush_log_at_trx_commit a 2. Cloud SQL no admite el valor 0 para esta marca. Si asigna el valor 2 a la marca, debe inhabilitar el registro binario en la réplica o asignar a sync_binlog un valor distinto de 1 para mejorar el rendimiento.

    Cloud SQL puede cambiar temporalmente los valores de las marcas innodb_flush_log_at_trx_commit y sync_binlog a los valores predeterminados al crear una copia de seguridad. Esto puede provocar que el rendimiento se vea reducido al hacer copias de seguridad. Para evitar que esto afecte a tu instancia, puedes cambiar la ventana de copia de seguridad cuando el uso de la instancia sea bajo. Para obtener más información, consulta Crear y gestionar copias de seguridad automáticas y bajo demanda.

    innodb_flush_log_at_timeout

    innodb_flush_log_at_timeout te permite modificar la frecuencia de vaciado de páginas para que no afecte al rendimiento de la confirmación de grupos de registros binarios. El ajuste predeterminado es una vez por segundo.

    Cloud SQL ha ampliado esta marca para que se pueda especificar un periodo en microsegundos.

    Ejemplos:

    • 0.001 para especificar 1 ms
    • 0.0001 para especificar 100 us
    • 12.5 para especificar 12,5 segundos
    • 12.005 para especificar 12 segundos y 5 ms
    • 0.005100 para especificar 5 ms y 100 µs

    En algunas cargas de trabajo, usar una granularidad de segundos completos para vaciar páginas puede ser inaceptable en términos de posible pérdida de transacciones. En su lugar, puedes vaciar las páginas con una granularidad de microsegundos para mantener el rendimiento sin que la durabilidad se vea afectada de forma significativa.

    Los periodos de tiempo en microsegundos de la marca innodb_flush_log_at_timeout solo se aplican cuando la marca de durabilidad innodb_flush_log_at_trx_commit se define como 2.

    El vaciado de las páginas puede producirse con una frecuencia mayor o menor que el valor especificado en innodb_flush_log_at_timeout, y este valor no es el límite superior.

    innodb_redo_log_capacity, innodb_log_file_size

    Si configura un valor para la marca innodb_redo_log_capacity, Cloud SQL ignora cualquier valor que defina para la marca innodb_log_file_size.

    Si no configuras ningún valor para las marcas innodb_redo_log_capacity o innodb_log_file_size, Cloud SQL usará el valor predeterminado de la marca innodb_redo_log_capacity o 104857600 (100 MB).

    Si no configuras la marca innodb_redo_log_capacity, pero sí la marca innodb_log_file_size, el valor del tamaño del registro de rehacer de innodb se calcula como innodb_log_file_size * innodb_log_file_in_group. Por ejemplo, si asignas a innodb_log_file_size el valor 10 GB y el valor predeterminado de innodb_log_file_in_group es 2, el valor efectivo del tamaño del registro de rehacer de innodb será de 20 GB.

    max_heap_table_size y tmp_table_size

    La memoria de instancia disponible se puede agotar si los valores de tmp_table_size y max_heap_table_size son demasiado altos para el número de consultas simultáneas que procesa la instancia. Si se agota la memoria, la instancia falla y se reinicia.

    Para obtener más información sobre cómo trabajar con estas marcas, consulta Cómo usa MySQL las tablas temporales internas y El motor de almacenamiento MEMORY.

    performance_schema

    No puedes habilitar esta marca en instancias con un núcleo compartido (menos de 3 GB de RAM). Si habilitas esta marca, no podrás cambiar el tipo de máquina a un tamaño que no la admita. Primero debes inhabilitar esta marca.

    event_scheduler
    Los eventos de MySQL, también conocidos como eventos programados, son tareas que puedes programar. Los eventos programados son un grupo de una o varias instrucciones SQL que se configuran para ejecutarse en uno o varios intervalos especificados. El valor predeterminado de MySQL 5.7 es OFF y el de MySQL 8.0 es ON. Para obtener más información sobre la marca event_scheduler, consulta event_scheduler. Si la marca event_scheduler se define como ON en una réplica de lectura, puede provocar errores en función del tipo de instrucciones definidas en los eventos:
    • Si el evento programado es un evento write en una réplica de lectura, se produce un error porque las réplicas de lectura son de solo lectura. Consulta más información sobre las réplicas de lectura.
    • Si el evento programado contiene una operación de parada, como kill, event_scheduler la aplica a la réplica. De esta forma, se detendrá la replicación y se eliminará la réplica.
    Para evitar estos errores, define la marca event_scheduler en OFF al crear réplicas.

    Para obtener más información sobre cómo habilitar o inhabilitar event_scheduler, consulta Configurar marcas de bases de datos.

    replica_skip_errors,slave_skip_errors
    Si se define la marca replica_skip_errors o slave_skip_errors , pueden producirse problemas de replicación. Por lo general, si se produce un error al ejecutar una instrucción, la replicación se detiene. Si usas esta marca, se omitirá el error y la réplica continuará, lo que provocará incoherencias entre la instancia principal y la réplica. Esto también puede dificultar la solución de problemas de replicación.

    Cloud SQL recomienda usar esta marca solo si es necesario. Si tienes problemas con la replicación, consulta Solucionar problemas de Cloud SQL: replicación para obtener más información sobre cómo resolver este problema.

    character_set_client
    character_set_connection
    character_set_results
    collation_connection
    innodb_buffer_pool_dump_now
    innodb_buffer_pool_load_abort
    innodb_buffer_pool_load_now
    innodb_ft_aux_table
    foreign_key_checks
    sql_select_limit
    unique_checks
    Estas marcas no se pueden seleccionar directamente en la Google Cloud consola ni con la CLI de gcloud. Para usar estas marcas, utiliza el siguiente comando:

    SET GLOBAL FLAG_NAME=FLAG_VALUE

    Para usar el comando SET GLOBAL, se necesita el privilegio CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN, que se concede al rol cloudsqlsuperuser.

    Para obtener más información sobre cómo conceder acceso con privilegios especiales a un usuario específico, consulta Información sobre los usuarios de MySQL. Estas marcas no se conservan. Cuando se vuelve a crear o se reinicia la instancia de Cloud SQL, los ajustes de la marca se restablecen a su valor predeterminado.

    binlog_order_commits

    El valor predeterminado de la marca binlog_order_commits es ON. Cloud SQL recomienda no cambiar el valor predeterminado de esta marca. Si el valor predeterminado se cambia a OFF, las transacciones del mismo grupo de registro binario se confirmarán en un orden diferente al que tenían cuando se escribieron en el registro binario. Esto afecta a las siguientes operaciones que ejecutan transacciones en el orden del registro binario:

    • Replicación: puede provocar incoherencias en los datos entre la fuente y las réplicas.
    • Point-in-time-recovery puede provocar incoherencias en los datos entre el estado restaurado de la recuperación a un momento dado y el estado histórico.

    optimizer_switch,optimizer_trace,optimizer_trace_features

    Las marcas del optimizador tienen valores separados por comas. Puedes definir estas marcas mediante la consola o gcloud. Para obtener más información sobre cómo definir esta marca mediante la consola, consulta Configurar marcas de base de datos. Si usas gcloud, puedes especificar el valor de estas marcas de dos formas diferentes:

    Para definir varias submarcas de optimizador en un comando, usa el delimitador de comas para separar cada nombre de marca. Si define un solo valor de sub-marca mediante el comando gcloud, se sobrescribirán todas las sub-marcas definidas anteriormente. Por ejemplo, si ejecuta el siguiente comando, el valor esperado de la subopción batched_key_access se definirá como on y todas las demás subopciones de optimizer_flags se definirán con sus valores predeterminados.
    gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=batched_key_access=on
    Si ejecutas el siguiente comando, el valor de la submarca block_nested_loop se definirá como on y todas las demás submarcas de optimizer_switch se sobrescribirán y se definirán con sus valores predeterminados.
    gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=block_nested_loop=on
    Esto incluye batched_key_access, que se ha definido como on en el comando anterior. Para conservar todas las submarcas definidas anteriormente y añadir otras nuevas, debes añadir los valores de todas las submarcas que quieras definir al añadir una submarca nueva.

    Marcas del sistema modificadas en Cloud SQL

    Todas las demás marcas del sistema de base de datos que no se indican en la sección Marcas admitidas se denominan marcas gestionadas. En el caso de algunas marcas gestionadas, Cloud SQL asigna a la marca un valor distinto del predeterminado para asegurarse de que las instancias de Cloud SQL se ejecuten de forma fiable. No puedes cambiar los valores de estas marcas del sistema.

    A continuación, se muestran las marcas gestionadas que no tienen el valor predeterminado.

    Nombre de la variable Ajuste de Cloud SQL. Notas
    binlog_format Resto del mundo Solo difiere en MySQL 5.6
    binlog_error_action ABORT_SERVER Solo difiere en MySQL 5.6
    innodb_doublewrite_pages 64 Se aplica a MySQL 8.0.26 y versiones posteriores
    innodb_file_format Barracuda Solo difiere en MySQL 5.6
    innodb_flush_method O_DIRECT
    memlock true
    skip_name_resolve ACTIVADO
    relay_log_info_repository TABLA Retirado en MySQL 8.4
    relay_log_recovery ACTIVADO
    master_info_repository TABLA Retirado en MySQL 8.4
    rpl_semi_sync_master_enabled 1
    rpl_semi_sync_master_timeout 3000
    admin_address 127.0.0.1 Difiere en MySQL 8.0 y versiones posteriores.
    create_admin_listener_thread ACTIVADO
    port-open-timeout 120 Difiere en MySQL 8.0 y versiones posteriores.
    partial_revokes ACTIVADO MySQL 8.0 y versiones posteriores. Para obtener más información sobre esta marca, consulta Partial revokes system flag in MySQL 8.0 (Marca de sistema de revocaciones parciales en MySQL 8.0).

    Marca de sistema partial_revokes en MySQL 8.0 y versiones posteriores

    La marca partial_revokes te permite limitar el acceso de los usuarios al esquema de una base de datos. En Cloud SQL para MySQL versión 8.0 y posteriores, la marca partial_revokes se establece en ON. Esto limita el uso de caracteres comodín al conceder o revocar privilegios de usuario a esquemas de bases de datos en MySQL 8.0. Actualiza la instrucción GRANT para usar el nombre completo del esquema de la base de datos en lugar de caracteres comodín.

    Por ejemplo, si usas el siguiente comando con el carácter comodín %\ para conceder privilegios a un usuario en MySQL 5.7, se le concederán privilegios a todas las bases de datos que terminen en _foobar.

    GRANT ALL PRIVILEGES ON `%\_foobar`.*  TO  'testuser'@'%';
    

    Sin embargo, en MySQL 8.0, los usuarios solo podrán acceder a la base de datos que coincida exactamente con %\_foobar.

    Hay dos formas diferentes de conceder acceso a varias bases de datos en MySQL 8.0 y versiones posteriores.

    1. Puedes conceder permisos a bases de datos específicas usando los nombres completos de las bases de datos, tal como se muestra en el siguiente comando:

        grant select on test1_foobar.* to 'testuser'@'%';
        grant select on test2_foobar.* to 'testuser'@'%';
        grant select on test3_foobar.* to 'testuser'@'%';
      
    2. Con partial_revokes, puede usar los comandos grant y revoke para conceder privilegios de usuario en todos los esquemas de la base de datos y, al mismo tiempo, restringir el acceso a algunos esquemas de la base de datos.

        grant select on *.* to 'testuser'@'%';
        revoke select on test3_foobar.* from 'testuser'@'%';
      

      De esta forma, se concede acceso a todos los esquemas de la base de datos, pero se restringe el acceso a test3_foobar.*.

    Filtros de replicación

    Los filtros de replicación solo se pueden definir en réplicas de Cloud SQL. Cada filtro de replicación se define como una sola marca para varias bases de datos, donde cada nombre de base de datos está separado por una coma. Puedes configurar un filtro de replicación en una réplica de Cloud SQL mediante la consola o con el siguiente comando:

    gcloud sql instances patch REPLICA_NAME --database-flags=^~^REPLICATION_FILTER_NAME=DATABASE_NAME1,DATABASE_NAME, etc

    Los filtros de replicación no admiten nombres de bases de datos que contengan valores de comas. El valor ^~^ del comando anterior es necesario para las marcas de la base de datos que son valores separados por comas.

    Cuando definas una marca de filtro de replicación, ten en cuenta lo siguiente:

    • Si la réplica deja de estar en buen estado, los datos filtrados por los filtros de replicación pueden aparecer en la réplica, ya que Cloud SQL usa los datos de origen de la principal para volver a crear la réplica de la instancia.
    • No puedes definir filtros de replicación en el esquema mysql.
    • Las reglas de filtro de réplica no se aplican a las exportaciones sin servidor.

    Marcas del asesor de índices

    A continuación, se muestra una lista de marcas de base de datos que usa Cloud SQL para MySQL para habilitar y gestionar funciones específicas del asesor de índices.

    Nombre de la marca Tipo
    Valores aceptables y notas
    ¿Es necesario reiniciar
    ?
    cloudsql_index_advisor_auto_advisor_schedule string
    predeterminado: 00:00
    No
    cloudsql_index_advisor_run_at_timestamp Datetime
    predeterminado: 00:00:00
    No

    Marcas con alias

    En la siguiente lista se incluyen los nombres de las marcas que se han cambiado en las versiones 8.0.26 y posteriores de Cloud SQL para MySQL.

    Nombre de marca obsoleto Nuevo nombre de la marca
    log_slow_slave_statements log_slow_replica_statements
    master_verify_checksum source_verify_checksum
    slave_checkpoint_group replica_checkpoint_group
    slave_checkpoint_period replica_checkpoint_period
    slave_compressed_protocol replica_compressed_protocol
    slave_net_timeout replica_net_timeout
    slave_parallel_type replica_parallel_type
    slave_parallel_workers replica_parallel_workers
    slave_pending_jobs_size_max replica_pending_jobs_size_max
    slave_preserve_commit_order replica_preserve_commit_order
    slave_skip_errors replica_skip_errors
    slave_sql_verify_checksum replica_sql_verify_checksum
    slave_transaction_retries replica_transaction_retries
    slave_type_conversions replica_type_conversions
    sync_master_info sync_source_info

    Si tu instancia de Cloud SQL usa un nombre de marca obsoleto, edítala, elimina el nombre de marca obsoleto y añade la marca nueva a tu instancia. Para obtener más información, consulta Configurar una marca de base de datos.

    Solución de problemas

    Problema Solución de problemas
    Después de habilitar un indicador, la instancia se repite entre pánico y fallos. Ponte en contacto con el servicio de asistencia para solicitar la retirada de la marca y, a continuación, una hard drain. De esta forma, se obliga a la instancia a reiniciarse en otro host con una configuración nueva sin la marca o el ajuste no deseados.
    Aparece el mensaje de error Bad syntax for dict arg cuando intentas definir una marca. Los valores de parámetros complejos, como las listas separadas por comas, requieren un tratamiento especial cuando se usan con comandos de gcloud.

    Siguientes pasos