Configurar marcas de bases de datos

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

En algunos casos, para configurar una marca, necesitas configurar otra distinta a fin de habilitar por completo la funcionalidad que deseas usar. Por ejemplo, para habilitar el registro lento de consultas, debes configurar la marca slow_query_log en on y la marca log_output en FILE, de modo que tus registros estén disponibles mediante el Explorador de registros de la consola de Google Cloud .

Cuando se configura, quita o modifica una marca para una instancia de base de datos, es posible que se reinicie la base de datos. El valor de marca se conserva para la instancia hasta que lo quites. Si la instancia es la fuente de una réplica y la instancia se reinicia, la réplica también se reinicia para alinearse con la configuración actual de la instancia.

Configurar marcas de bases de datos

En las siguientes secciones, se describen las tareas comunes de administración de marcas.

Establece una marca de base de datos

Console

  1. En la consola deGoogle Cloud , selecciona el proyecto que contiene la instancia de Cloud SQL para la que deseas establecer una marca de base de datos.
  2. Abre la instancia y haz clic en Editar.
  3. Ve a la sección Marcas.
  4. Para configurar una marca que no se configuró antes en la instancia, haz clic en Agregar elemento, elige la marca del menú desplegable y configura su valor.
  5. Haz clic en Guardar para guardar los cambios.
  6. Confirma tus cambios en Marcas en la página Descripción general.

gcloud

Edita la instancia:

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

Mediante este comando, se reemplazarán todas las marcas de bases de datos establecidas con anterioridad. Para conservarlas y agregar nuevas, incluye los valores de todas las marcas que desees configurar en la instancia. Cualquier marca que no esté incluida de forma explícita se establecerá con su valor predeterminado. Para marcas que no tomen un valor, especifica el nombre de la marca seguido por un signo igual (“=”).

Por ejemplo, para configurar 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 agregar 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
}

Aplique los cambios

Para aplicar tu configuración de Terraform en un proyecto de Google Cloud , completa los pasos de las siguientes secciones.

Prepara Cloud Shell

  1. Inicia Cloud Shell
  2. Establece el proyecto Google Cloud predeterminado en el que deseas aplicar tus configuraciones de Terraform.

    Solo necesitas ejecutar este comando una vez por proyecto y puedes ejecutarlo en cualquier directorio.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

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

Prepara 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 dentro de ese directorio. El nombre del archivo debe tener la extensión .tf, por ejemplo, main.tf. En este instructivo, el archivo se denomina main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Si sigues un instructivo, puedes copiar el código de muestra en cada sección o paso.

    Copia el código de muestra en el main.tf recién creado.

    De manera opcional, copia el código de GitHub. Esto se recomienda cuando el fragmento de Terraform es parte de una solución de extremo a extremo.

  3. Revisa y modifica los parámetros de muestra que se aplicarán a tu entorno.
  4. Guarda los cambios.
  5. Inicializa Terraform. Solo debes hacerlo una vez por directorio.
    terraform init

    De manera opcional, incluye la opción -upgrade para usar la última versión del proveedor de Google:

    terraform init -upgrade

Aplica los cambios

  1. Revisa la configuración y verifica que los recursos que creará o actualizará Terraform coincidan con tus expectativas:
    terraform plan

    Corrige la configuración según sea necesario.

  2. Para aplicar la configuración de Terraform, ejecuta el siguiente comando y, luego, escribe yes cuando se te solicite:
    terraform apply

    Espera hasta que Terraform muestre el mensaje “¡Aplicación completa!”.

  3. Abre tu proyecto Google Cloud para ver los resultados. En la consola de Google Cloud , navega a tus recursos en la IU para asegurarte de que Terraform los haya creado o actualizado.

Borra los cambios

Para borrar tus cambios, haz lo siguiente:

  1. Para inhabilitar la protección contra eliminaciones, en tu archivo de configuración de Terraform, establece el argumento deletion_protection en false.
    deletion_protection =  "false"
  2. Para aplicar la configuración actualizada de Terraform, ejecuta el siguiente comando y, luego, ingresa yes cuando se te solicite:
    terraform apply
  1. Quita los recursos que se aplicaron antes con tu configuración de Terraform a través de la ejecución del siguiente comando y, luego, ingresa yes cuando se te solicite:

    terraform destroy

REST v1

Si deseas configurar una marca para una base de datos existente, haz lo siguiente:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la 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, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Por ejemplo, si deseas configurar la marca general_log para una base de datos existente, usa el siguiente comando:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la 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, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Si hay marcas existentes configuradas para la base de datos, modifica el comando anterior a fin de incluirlas. El comando PATCH reemplaza las marcas existentes con las especificadas en la solicitud.

REST v1beta4

Si deseas configurar una marca para una base de datos existente, haz lo siguiente:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la 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, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Por ejemplo, si deseas configurar la marca general_log para una base de datos existente, usa el siguiente comando:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la 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, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Si hay marcas existentes configuradas para la base de datos, modifica el comando anterior a fin de incluirlas. El comando PATCH reemplaza las marcas existentes con las especificadas en la solicitud.

Restablece los valores predeterminados de todas las marcas

Console

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

gcloud

Restablece todas las marcas a sus valores predeterminados en una instancia:

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

Se te solicitará que confirmes que se reiniciará la instancia.

REST v1

Para borrar todas las marcas de una instancia existente, haz lo siguiente:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la 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, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

REST v1beta4

Para borrar todas las marcas de una instancia existente, haz lo siguiente:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la 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, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Ve los valores actuales de las marcas de base de datos

Para ver todos los valores actuales de las variables del sistema de MySQL, accede a la instancia con el cliente mysql y, luego, ingresa la siguiente declaración:

 SHOW VARIABLES;

Ten en cuenta que solo puedes cambiar el valor para marcas compatibles (como se indica a continuación).

Determina qué marcas de base de datos se configuraron para una instancia

Para ver qué marcas se configuraron para una instancia de Cloud SQL, sigue estos pasos:

Console

  1. En la consolaGoogle Cloud , selecciona el proyecto que contiene la instancia de Cloud SQL para la que deseas ver las marcas de base de datos que se configuraron.
  2. Selecciona la instancia para abrir la página de descripción general de la instancia.

    Las marcas de base de datos que se configuraron se enumeran en la sección Marcas de base de datos.

gcloud

Obtén el estado de la instancia:

gcloud sql instances describe INSTANCE_NAME

En el resultado, las marcas de base de datos se indican en settings como el grupo databaseFlags. Para obtener más información sobre la representación de las marcas en el resultado, consulta Representación de recursos de instancias.

REST v1

Para enumerar las marcas configuradas para una instancia, haz lo siguiente:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

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

Método HTTP y URL:

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

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

En el resultado, busca el campo databaseFlags.

REST v1beta4

Para enumerar las marcas configuradas para una instancia, haz lo siguiente:

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

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

Método HTTP y URL:

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

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

En el resultado, busca el campo databaseFlags.

Marcas administradas por Cloud SQL

Cloud SQL ajusta ciertas marcas de sistema según el tipo de máquina de la instancia.

innodb_buffer_pool_instances
  • 1 para db-f1-micro y db-g1-small.
  • 1 si RAM < 7.5 GB.
  • 2 si 7.5 GB <= RAM < 13 GB
  • 4 si 13 GB <= RAM < 26 GB.
  • 8 si RAM >= 26 GB.

Marcas compatibles

Las marcas compatibles con Cloud SQL son las más solicitadas para MySQL. No se admiten las marcas que no se mencionan en esta sección.

En el caso de una marca determinada, es posible que Cloud SQL sea compatible con un rango o valor diferente del parámetro o la opción correspondiente de MySQL.

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

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

Marca de Cloud SQL Tipo
Notas y valores aceptables
¿Reinicio
obligatorio?
activate_all_roles_on_login boolean
on | off
valor predeterminado: off
No
activate_mandatory_roles boolean
on | off
valor predeterminado: on
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
predeterminado: max_connections
MySQL 8.4 y versiones anteriores: 4000
MySQL 9.7 y versiones posteriores: 10000
binlog_cache_size integer
4096 ... 9223372036854775807
No.
binlog_expire_logs_seconds integer
0 o 86400 (1 day)4294967295 (max value)
El valor predeterminado es 86,400, que equivale a 1 día.

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

No.
binlog_group_commit_sync_delay 0 ... 1000000

Compatible con MySQL 5.7 y versiones posteriores

La cantidad predeterminada es 0.

No.
binlog_group_commit_sync_no_delay_count 0 ... 1000000

Compatible con MySQL 5.7 y versiones posteriores

La cantidad predeterminada es 0.

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

Consulta la sección Sugerencias 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
110000000 predeterminado:
- MySQL 8.4 y versiones anteriores: 25000
- MySQL 9.7 y versiones posteriores: 10000000

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No
binlog_transaction_dependency_tracking enumeration

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela. Esta marca no es compatible con MySQL 8.4 ni versiones posteriores.

No
block_encryption_mode string
aes-keylen-mode
predeterminado: aes-128-ECB
No.
bulk_insert_buffer_size integer
0 ... 4294967295
predeterminado 8388608
No
caching_sha2_password_storage_format string
CRYPT5 | PBKDF2_SHA512
valor predeterminado: CRYPT5
No
caching_sha2_password_enforce_storage_format boolean
1 (verdadero) | 0 (falso)
valor predeterminado: 0 (falso)
No
caching_sha2_password_proxy_users boolean
on | off
predeterminado: OFF

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

No
collation_connection string
predeterminado:
MySQL 8.0 y versiones posteriores: utf8mb4_0900_ai_ci

Consulta la sección Sugerencias 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

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

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

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

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

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

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

No
character_set_server string
utf8 o utf8mb4 (recomendado)
check_proxy_users boolean
on | off
predeterminado: off
No.
cloudsql_allow_analyze_table boolean on | off
valor predeterminado: off
No
cloudsql_avoid_parse_session_logging boolean on | off
predeterminado: 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
valor predeterminado: 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

opción predeterminada: create_user ,alter_user ,grant y update
No.
cloudsql_mysql_audit_data_masking_regex string
max_string_length: 2048
valor predeterminado: Consulta Configuración del complemento de auditoría.
No
cloudsql_mysql_audit_log_write_period integer
0...5000 milisegundos
opción predeterminada: 500 milisegundos
No.
cloudsql_mysql_audit_max_query_length integer
-1...1073741824
opción predeterminada: -1
No
cloudsql_parameterized_secure_view boolean
on | off
valor predeterminado: off
No
cloudsql_vector boolean on | off
valor predeterminado: off
cloudsql_vector_iterative_filtering boolean

valor predeterminado: off
No
cloudsql_vector_iterative_filtering_max_neighbors integer
10...1000
valor predeterminado: 500
No
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
connection_memory_chunk_size integer
0536870912
Predeterminado:
MySQL 8.0.28 a 8.0.33: 8912
MySQL 8.0.34 y versiones posteriores: 8192
No
connection_memory_limit integer
20971529223372036854775807
No
connection_memory_status_limit integer
167772169223372036854775807
valor predeterminado: 9223372036854775807
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
valor predeterminado: 0
No
default_time_zone string
Hay dos formas de especificar las zonas horarias: como desplazamientos de zona horaria y nombres de zona horaria. Por ejemplo, +00:00 es el desplazamiento de zona horaria de Londres (que se encuentra en la zona horaria UTC) y Europe/London es el nombre de la zona horaria.

Usa valores para especificar desplazamientos de zona horaria, desde -12:59 hasta +13:00. Los ceros iniciales son obligatorios.

Cuando se usan nombres de zona horaria, se admite el ajuste automático del horario de verano. Cuando se usan desplazamientos de zona horaria, no se admite. Consulta una lista de nombres de zonas horarias compatibles con Cloud SQL para MySQL. Debes actualizar esta marca de forma manual, en la instancia principal y en todas las réplicas de lectura, para que se considere.

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

default_tmp_storage_engine string
INNODB|MEMORY
default: INNODB
No
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
valor predeterminado: 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 se ejecuten los eventos programados.

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

No.
expire_logs_days integer
099
El valor predeterminado es 0, lo que significa que no se realiza la eliminación automática.

Nota: Esta marca no es compatible con MySQL 8.4. Utiliza binlog_expire_logs_seconds en lugar de esta función. Consulta la sección Sugerencias 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 Sugerencias 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 Sugerencias para obtener más información sobre registros generales.

No.
generated_random_password_length integer 5-255
valor predeterminado: 20
No
global_connection_memory_limit integer
16777216 9223372036854775807
No
global_connection_memory_status_limit integer
167772169223372036854775807
valor predeterminado: 9223372036854775807
No
global_connection_memory_tracking boolean
on | off
Valor predeterminado: off
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+): 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)

Este valor de marca depende de innodb_buffer_pool_size y innodb_buffer_pool_instances. MySQL puede ajustar de manera automática el valor de innodb_buffer_pool_chunk_size en función de estas dos marcas.

innodb_buffer_pool_dump_pct integer
1 ... 100
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 Sugerencias 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 Sugerencias 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 Sugerencias para obtener más información sobre esta marca.

No
innodb_buffer_pool_size integer

Se requiere un reinicio para esta marca de MySQL 5.6. Consulta la sección Sugerencias para obtener más información sobre esta marca.

No.
innodb_change_buffer_max_size integer
0 50
predeterminado:
- MySQL 8.4 y versiones anteriores: 25
- MySQL 9.7 y versiones posteriores: 5
No
innodb_change_buffering string

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

predeterminado:
- MySQL 8.0 y versiones anteriores: none
- MySQL 8.4 y versiones posteriores: all
No
innodb_checksum_algorithm string

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

No
innodb_cloudsql_managed_buffer_pool boolean
on | off
Predeterminado: off
No
innodb_cloudsql_managed_buffer_pool_threshold_pct integer
50 ... 99
Rango de RAM de la instanciaPredeterminado
Menos de 3 GB de RAMN/A (con núcleo compartido no admitido)
3 a 8 GB de RAM90
8 a 15 GB de RAM92
De 15 a 100 GB de RAM95
Más de 100 GB de RAM97
No
innodb_cloudsql_optimized_write boolean

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

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.

Valor 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 Sugerencias 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 Sugerencias para obtener más información sobre esta marca.

No.
innodb_flush_log_at_trx_commit integer
1, 2
Predeterminado: 1

Si asciendes una réplica con esta marca habilitada, la marca se quita de forma automática, lo que hace que la réplica promocionada tenga 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 Sugerencias para obtener más información sobre esta marca.

No
innodb_flush_method string

Opciones: fsync, O_DIRECT, O_DSYNC

Valor predeterminado: O_DIRECT
innodb_flush_neighbors enumeration
02
Valores predeterminados:
- MySQL 5.6: 0
- MySQL 5.7 a MySQL 8.0:2
- MySQL 8.4 y versiones posteriores: 0
No
innodb_flush_sync boolean
on|off
No
innodb_flushing_avg_loops integer
1 ... 1000
Predeterminado: 30
No
innodb_fsync_threshold integer
0 9223372036854775807
Valor predeterminado: 0
No
innodb_ft_aux_table string

Consulta la sección Sugerencias 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_idle_flush_pct integer
0 100
Valor predeterminado: 100
No
innodb_io_capacity integer
100 ... 100000
Predeterminado: 5000

Para obtener más información sobre la configuración del rendimiento del disco, consulta la tabla de VM de E2 en Configura discos para cumplir con los requisitos de rendimiento.

No.
innodb_io_capacity_max integer
100 ... 100000
Predeterminado: 10000

Para obtener más información sobre la configuración del rendimiento del disco, consulta la tabla de VM de E2 en Configura discos para cumplir con los requisitos de rendimiento.

No.
innodb_large_prefix boolean
on|off

Solo compatible con 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 a 8.4: 4194304 ... 274877906944
- MySQL 9.7: Se quitó de la base de datos

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

innodb_log_spin_cpu_abs_lwm integer
0 ... 4294967295
predeterminado: 80
No.
innodb_log_spin_cpu_pct_hwm integer
0 ... 100
predeterminado: 50
No.
innodb_log_wait_for_flush_spin_hwm integer
0 ... 4294967295
predeterminado: 400
No.
innodb_log_write_ahead_size integer
512 ... 65536
predeterminado: 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
predeterminado: 0
No.
innodb_max_undo_log_size integer
10485760 ... 9223372036854775807
predeterminado: 1073741824
No.
innodb_max_purge_lag_delay integer
0 ... 10000000
predeterminado: 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, all
No
innodb_native_foreign_keys boolean
on | off
valor predeterminado: off
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
1002147483647
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. Para MySQL 5.7 y 8.0, el valor predeterminado es 4. Para 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
132
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 Sugerencias.

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
predeterminado: 12.5
No.
innodb_sort_buffer_size integer
65536 ... 67108864
innodb_spin_wait_delay integer
- MySQL 5.7: 0 1000000
- MySQL 8.0.13+: 0 1000
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

La cantidad predeterminada 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
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
predeterminado: 8388608
No.
key_cache_age_threshold integer
100 ... 9223372036854775807
predeterminado: 300
No.
key_cache_block_size integer
512 ... 16384
predeterminado: 1024
No.
key_cache_division_limit integer
1 ... 100
predeterminado: 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
default: 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
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 | offPredeterminado: off
No.
log_slow_slave_statements boolean
on | offPredeterminado: 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 configurar esta marca a menos de 1 si es necesario.

Si también se habilita la marca log_queries_not_using_indexes, es posible que veas búsquedas con menos de la hora especificada aquí.

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

Si usas el valor predeterminado de 0 para esta marca, los nombres de tablas y bases de datos distinguen mayúsculas de minúsculas. Cuando se establece en 1, los nombres de la tabla y la base de datos no distinguen mayúsculas de minúsculas.

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

Para las instancias de MySQL 8.0 y versiones posteriores, puedes establecer el valor de esta marca en un valor deseado solo mientras se crea una instancia. Una vez que establezcas este valor, no podrás cambiarlo. Además, en el caso de una instancia existente, no puedes cambiar el valor de esta marca.

Cuando creas réplicas de lectura para instancias de MySQL 5.7, MySQL 8.0 o MySQL 8.4, la réplica hereda este valor de marca de la instancia principal.

mandatory_roles string role name
valor predeterminado: empty string
No
master_verify_checksum boolean
on | offPredeterminado: off
No.
max_allowed_packet integer
16384 …  1073741824

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

No.
max_binlog_cache_size integer
4096 ... 4294967296
predeterminado: 4294967296
No.
max_binlog_size integer
4096 ... 1073741824
No.
max_binlog_stmt_cache_size integer
4096 ... 4294967296
predeterminado: 4294967296
No.
max_connect_errors integer
1 ... 9223372036854775807
predeterminado: 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 anterior: 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 Sugerencias 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
predeterminado: 0
No.
myisam_data_pointer_size integer
2...7
default: 6
No.
myisam_max_sort_file_size integer
0...9223372036853727232
default: 9223372036853727232
No.
myisam_mmap_size integer
7...9223372036854775807
default: 9223372036854775807
myisam_sort_buffer_size integer
4096...4294967295
default: 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 Sugerencias para obtener más información sobre las marcas de valores múltiples.

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

Consulta la sección Sugerencias para obtener más información sobre las marcas de valores múltiples.

No.
optimizer_trace_features multi-value repeated string

Consulta la sección Sugerencias para obtener más información sobre las marcas de valores múltiples.

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
predeterminado: off para MySQL 5.6 y 5.7
predeterminado: off para MySQL 8.0 y versiones posteriores instancias con RAM inferior a 12 GB
predeterminado: on para MySQL 8.0 y versiones posteriores instancias con RAM superior o igual a 12 GB

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

performance_schema_accounts_size integer
-1 ... 1048576

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

performance_schema_digests_size integer
-1 ... 1048576

Consulta la sección Sugerencias para obtener más información sobre las marcas 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 Sugerencias 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 Sugerencias para obtener más información sobre las marcas performance_schema.

performance_schema_events_statements_history_size integer
-1 ... 1024

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

performance_schema_events_transactions_history_long_size integer
-1 ... 1048576

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

performance_schema_events_transactions_history_size integer
-1 ... 1024

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

performance_schema_events_waits_history_long_size integer
-1 ... 1048576

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

performance_schema_events_waits_history_size integer
-1 ... 1024

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

performance_schema_hosts_size integer
-1 ... 1048576

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

performance_schema_max_cond_classes integer
0 ... 256

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

performance_schema_max_cond_instances integer
-1 ... 1048576

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

performance_schema_max_digest_length integer
0 ... 1048576

Consulta la sección Sugerencias para obtener más información sobre las marcas 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 Sugerencias para obtener más información sobre las marcas performance_schema.

performance_schema_max_file_handles integer
0 ... 1048576

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

performance_schema_max_file_instances integer
-1 ... 1048576

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

performance_schema_max_index_stat integer
-1 ... 1048576

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

performance_schema_max_logger_classes integer
0 ... 200
predeterminado: 80

Para obtener más información sobre las marcas performance_schema, consulta la sección Sugerencias.

performance_schema_max_memory_classes integer
0 ... 1024

Para obtener más información sobre las marcas performance_schema, consulta la sección Sugerencias.

performance_schema_max_metadata_locks integer
-1 ... 104857600

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

performance_schema_max_mutex_classes integer
0 ... 256

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

performance_schema_max_mutex_instances integer
-1 ... 104857600

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

performance_schema_max_prepared_statements_instances integer
-1 ... 1048576

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

performance_schema_max_program_instances integer
-1 ... 1048576

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

performance_schema_max_rwlock_classes integer
0 ... 256

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

performance_schema_max_rwlock_instances integer
-1 ... 104857600

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

performance_schema_max_socket_classes integer
0 ... 256

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

performance_schema_max_socket_instances integer
-1 ... 1048576

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

performance_schema_max_sql_text_length integer
0 ... 1048576

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

performance_schema_max_stage_classes integer
0 ... 256

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

performance_schema_max_statement_classes integer
0 ... 256

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

performance_schema_max_statement_stack integer
1 ... 256

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

performance_schema_max_table_handles integer
-1 ... 1048576

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

performance_schema_max_table_instances integer
-1 ... 1048576

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

performance_schema_max_table_lock_stat integer
-1 ... 1048576

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

performance_schema_max_thread_classes integer
0 ... 256

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

performance_schema_max_thread_instances integer
-1 ... 1048576

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

performance_schema_session_connect_attrs_size integer
-1 ... 1048576

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

performance_schema_setup_actors_size integer
-1 ... 1048576

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

performance_schema_setup_objects_size integer
-1 ... 1048576

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

performance_schema_show_processlist boolean
on | off
Predeterminado: off
No
performance_schema_users_size integer
-1 ... 1048576

Consulta la sección Sugerencias para obtener más información sobre las marcas 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 para MySQL 8.0 ni versiones posteriores porque la caché de consultas es obsoleta a partir de MySQL 5.7.20 y se quita en MySQL 8.0.

No
query_cache_min_res_unit integer
0 ... 9223372036854775807

Esta marca no está disponible para MySQL 8.0 ni versiones posteriores porque la caché de consultas es obsoleta a partir de MySQL 5.7.20 y se quita en MySQL 8.0.

No
query_cache_size integer
0 ... 223338299392

Esta marca no está disponible para MySQL 8.0 ni versiones posteriores porque la caché de consultas es obsoleta a partir de MySQL 5.7.20 y se quita en MySQL 8.0.

No
query_cache_type enumeration
0 ... 2

Esta marca no está disponible para MySQL 8.0 ni versiones posteriores porque la caché de consultas es obsoleta a partir de MySQL 5.7.20 y se quita en MySQL 8.0.

query_cache_wlock_invalidate boolean
on | off

Esta marca no está disponible para MySQL 8.0 ni versiones posteriores porque la caché de consultas es obsoleta a partir de MySQL 5.7.20 y se quita 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.
read_buffer_size integer
8192 ... 2147483647
No.
read_only boolean
on | off

No tiene efecto en 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 habilitados los subprocesos múltiples.

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
Configuración predeterminada:
MySQL 8.0.26 o anterior: DATABASE
MySQL 8.0.27 o posterior: LOGICAL_CLOCK

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No
replica_Parallel_Workers integer

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No
replica_pending_jobs_size_max integer

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No.
replica_preservation_commit_order. boolean

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No.
replica_skip_errors string
Predeterminado: OFF

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

replica_sql_verify_checksum boolean
on | off
No.
replica_transaction_retries integer
0 ... 9223372036854775807
No.
replica_type_conversions String
valores: 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 replicación.

No.
replicate_do_table. string

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

No.
replicate_ignore_db string

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

No.
replicate_ignore_table string

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

No.
replicate_wild_do_table. string

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

No.
replicate_wild_ignore_table string

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

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 compatible con 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 habilitados los subprocesos múltiples.

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
Configuración predeterminada:
MySQL 8.0.26 o anterior: DATABASE
MySQL 8.0.27 o posterior: LOGICAL_CLOCK

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No.
slave_parallel_workers integer

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No.
slave_preserve_commit_order boolean

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No.
slave_pending_jobs_size_max integer

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela.

No.
slave_skip_errors string
Predeterminado: OFF

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

slave_sql_verify_checksum boolean
on | off
No.
slave_transaction_retries integer
0 ... 9223372036854775807
No.
slave_type_conversions string
valores: 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 Sugerencias para obtener más información sobre registros lentos de consultas.

No.
sort_buffer_size integer
32768 ... 9223372036854775807
No.
source_verify_checksum. boolean
on | off
Predeterminado: off
No
sql_generate_invisible_primary_key boolean
on | off
Predeterminado: off
No
sql_mode string

Consulta los modos SQL de servidor en la documentación de MySQL para conocer los valores permitidos, incluidos los modos combinados, como ANSI. NO_DIR_IN_CREATE no es compatible.

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

No
sql_require_primary_key boolean
on | off
Predeterminado: off
No.
sql_select_limit integer 0...9223372036854775807
predeterminado: 18446744073709551615

Consulta la sección Sugerencias 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

La configuración predeterminada de 1 habilita la sincronización del registro binario en el disco antes de que se confirmen las transacciones.

Si asciendes una réplica con esta marca habilitada, la marca se quita de forma automática, lo que hace que la réplica promocionada tenga 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 Sugerencias para obtener más información sobre esta marca.

No.
sync_master_info integer
0 ... 4294967295
Configuración predeterminada: 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
Configuración predeterminada: 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
table_open_cache_triggers integer
1524288
valor predeterminado: 524288
No
temptable_max_mmap integer
0 ... 68719476736

Valores predeterminados:

  • MySQL 8.0 y versiones anteriores: 1073741824
  • MySQL 8.4 y versiones posteriores: 0
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 la versión 8.0.27: TLSv1, TLSv1.1
Versión 8.0.28 o posterior: TLSv1.2
Versión 5.7: Sí

Versión 8.0 o posterior: No
tmp_table_size integer
1024 …  67108864

Consulta la sección Sugerencias 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

Si necesitas información para usar esta marca y sus valores admitidos, consulta Configura la replicación paralela. Esta marca no es compatible con MySQL 8.4.

No
unique_checks boolean
on | off
predeterminado: on

Consulta la sección Sugerencias 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
Predeterminado: on
No.

Nombres de zona horaria

En esta sección, aprenderás sobre los nombres de las zonas horarias que admite Cloud SQL para MySQL.

La tabla de esta sección muestra lo siguiente:

  • Nombre de la zona horaria: El nombre que admite Cloud SQL para MySQL.
  • STD: La compensación de zona horaria en la hora estándar (STD).
  • DST: La compensación de la zona horaria en el horario de verano (DST).
  • Nombres sinónimos: nombres de las zonas horarias que tal vez quieras usar, pero no son compatibles con Cloud SQL para MySQL. Si esto ocurre, usa el nombre de zona horaria correspondiente.
Nombre de la zona horaria STD DST Nombres 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
America/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 Brazil/West
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
América/Sao Paulo −03:00 −03:00
America/Tijuana −08:00 −07:00 Mexico/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/Kolkata
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/Kathmandu +05:45 +05:45 Asia/Katmandu
Asia/Kolkata +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 ROC
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/South
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/West
Australia/Sydney +10:00 +11:00 Australia/NSW
Australia/ACT
Australia/Canberra
Brazil/East −03:00 −03:00 America/Sao_Paulo
Canada/Newfoundland −03:30 −02:30 America/St_Johns
Canada/Saskatchewan −06:00 −06:00 America/Regina
Canada/Yukon −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 Europe/Mariehamn
Europe/Istanbul +03:00 +03:00 Turkey
Asia/Istanbul
Europe/Kaliningrad +02:00 +02:00
Europa/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 Europe/Bratislava
Europe/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
Pacific/Samoa −11:00 −11:00 Pacific/Pago_Pago
US/Samoa
US/Alaska −09:00 −08:00 America/Anchorage
America/Juneau
America/Metlakatla
America/Nome
America/Sitka
America/Yakutat
US/Central −06:00 −05:00 America/Chicago
US/Eastern −05:00 −04:00 America/New_York
US/East-Indiana −05:00 −04:00 America/Indiana/Indianapolis
America/Indianapolis
America/Fort_Wayne
US/Mountain −07:00 −06:00 America/Denver
US/Pacific −08:00 −07:00 America/Los_Angeles
UTC +00:00 +00:00 Etc/UTC
Etc/UCT
Etc/Universal
Etc/Zulu

Es posible que las tablas de zonas horarias en Cloud SQL necesiten actualizarse con los datos más recientes. Por ejemplo, un país puede cambiar de una zona horaria de DST a una de STD, o bien un país puede introducir una zona horaria nueva.

Para cada versión importante del agente de servicio (CSA) de Cloud SQL, las tablas de zonas horarias se actualizan con los datos más recientes. Cuando esto sucede, durante el período de mantenimiento, las instancias de réplica se actualizan. Luego, las instancias principales se actualizan durante el período de mantenimiento.

Puedes esperar hasta el período de mantenimiento habitual para la versión de CSA o puedes realizar el mantenimiento de autoservicio para actualizar las tablas de zona horaria con los datos más recientes. Para obtener más información sobre cómo ver las versiones de mantenimiento disponibles, consulta Determina la versión de mantenimiento objetivo.

Sugerencias para trabajar con marcas

general_log, slow_query_log

Para que los registros general o slow query estén disponibles, habilita la marca correspondiente y configura la marca log_output como FILE. Esto hace que el resultado del registro esté disponible a través del Visor de registros en la Google Cloud consola. Ten en cuenta que se aplican los cargos de registro de Google Cloud Observability. Para minimizar el costo de almacenamiento de la instancia, los registros general y slow query en el disco de la instancia se rotarán cuando el archivo de registro tenga más de 24 horas (y no se realicen cambios dentro de ese período) o supere los 100 MB. Los archivos de registro antiguos se borrarán automáticamente después de la rotación.

Si log_output está configurado como NONE, no podrás acceder a los registros. Si configuras log_output como TABLE, el resultado del registro se ubica en una tabla en la base de datos del sistema MySQL. Puede consumir una cantidad considerable de espacio en disco. La hora de reinicio de la instancia o su cobertura del ANS podrían verse afectadas si la tabla se agranda demasiado. Por este motivo, no se recomienda la opción TABLE. Además, el contenido de registro no está disponible en el Explorador de registros y no se rota. Si es necesario, puedes usar la API para truncar las tablas de registro. Para obtener más información, consulta la página de referencia de instances.truncateLog.

expire_logs_days, binlog_expire_logs_seconds
Si habilitas la recuperación de un momento determinado, el período de vencimiento de los registros binarios se determinará según el menor del período de retención de registros de transacciones y los valores de estas marcas. Puedes usar estas marcas para administrar durante cuánto tiempo se almacenan los registros binarios en las réplicas. La marca expire_logs_days se quitó de MySQL 8.4 y versiones posteriores. Para obtener más información, consulta Retención del registro de transacciones.
innodb_buffer_pool_size

El valor de esta marca es el tamaño en bytes del grupo de búfer. El tamaño del búfer de memoria debe ser siempre igual o un múltiplo del valor que obtienes cuando multiplicas innodb_buffer_pool_chunk_size por innodb_buffer_pool_instances. Si modificas el tamaño del grupo de búferes a un valor que no es igual a innodb_buffer_pool_chunk_size multiplicado por innodb_buffer_pool_instances ni un múltiplo de este, Cloud SQL ajustará el tamaño del grupo de búferes automáticamente. No puedes habilitar esta marca en instancias que tengan menos de 3,840 MiB de RAM.

No puedes configurar esta marca para los tipos de máquinas de núcleo compartido (f1_micro y g1_small). Se debe reiniciar para cambiar esta marca en MySQL 5.6.

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

Valores aproximados para esta marca:

Rango de RAM de la instancia% mín% predeterminado% máx
0 - 4.0GB de RAM~34%
4.0GB - 7.5GB~20%~34%~34%
7.5 GB - 12 GB~20%~52%~52%
12 GB - 24 GB~20%~67%~67%
24 GB o más~20%~72%~72%

Los valores exactos pueden variar. Cuando se habilita el grupo de búfer administrado, se realizan ajustes en el innodb_buffer_pool_size que no se reflejan en la consola de Google Cloud . Para calcular el valor actual de tu instancia, puedes ejecutar la consulta:

  show global variables like 'innodb_buffer_pool_size';
  

Como referencia, se proporcionan los valores mínimos y máximos permitidos, los predeterminados para los siguientes tipos de máquinas.

Tipo de máquina RAM de instancias (GB) Mín (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%)

Si el uso de memoria es alto para tu instancia y experimentas eventos de memoria insuficiente (OOM), puedes habilitar la marca innodb_cloudsql_managed_buffer_pool para reducir el valor de tu innodb_buffer_pool_size de forma temporal. Para obtener más información, consulta Habilita el búfer de memoria administrado.

Cuando el búfer de memoria administrado realiza ajustes en el valor de innodb_buffer_pool_size, los cambios no se reflejan en el valor de la marca que se muestra en la consola de Google Cloud . Para ver el valor actual de innodb_buffer_pool_size cuando el pool de búfer administrado está habilitado, puedes consultar el valor de la marca con el cliente de MySQL:
show global variables like 'innodb_buffer_pool_size';
innodb_cloudsql_optimized_write
Esta marca solo está disponible para las instancias de 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 tu base de datos. Además, esta marca habilita un algoritmo de recuperación ante fallas mejorado para reducir el tiempo de recuperación ante fallas y utiliza de forma adaptativa la capacidad de procesamiento de E/S del disco no utilizada para acelerar el calentamiento del búfer. En la mayoría de los casos de uso, puedes experimentar un mejor rendimiento, como un mayor procesamiento y una menor latencia, con esta marca habilitada. Sin embargo, si tus operaciones de escritura en la base de datos causan 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 después de que se reduce la carga. De forma predeterminada, la marca innodb_cloudsql_optimized_write está habilitada para todas las instancias nuevas y actualizadas de la edición Cloud SQL Enterprise Plus. En el caso de las instancias existentes de la edición Cloud SQL Enterprise Plus, esta marca se habilita después de que se aplica 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, se debe reiniciar la instancia.
innodb_file_per_table

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

innodb_flush_log_at_trx_commit, sync_binlog
Para el cumplimiento total de ACID y, a fin de mantener la durabilidad y coherencia en una configuración de replicación, las marcas innodb_flush_log_at_trx_commit y sync_binlog deben configurarse en el valor predeterminado de 1. Si cambias el valor predeterminado, la durabilidad puede disminuir, lo que puede generar incoherencia entre la instancia principal y las réplicas. Por lo tanto, la instancia pierde su cobertura del ANS. Además, cualquiera de las siguientes situaciones puede ocurrir:
  • Pérdida de datos en ciertas situaciones, como una falla de la VM o una conmutación por error de una instancia regional con alta disponibilidad
  • Datos no sincronizados en archivos de registro binario e InnoDB
  • Pérdida o falla de los datos de PITR
  • Incoherencia de datos entre una instancia principal y sus réplicas
  • Una interrupción de replicación
Establecer el valor de la marca innodb_flush_log_at_trx_commit o sync_binlog en valores no predeterminados para instancias principales, independientes y de alta disponibilidad reduce la durabilidad. Si necesitas un mayor rendimiento para las réplicas de lectura, recomendamos configurar el valor innodb_flush_log_at_trx_commit como 2. Cloud SQL no admite que se establezca el valor de esta marca en 0. Si configuras el valor de la marca en 2, debes inhabilitar el registro binario en la réplica o establecer sync_binlog en un valor distinto de 1 para obtener un mayor rendimiento. Cloud SQL puede cambiar de forma temporal los valores de las marcas innodb_flush_log_at_trx_commit y sync_binlog a los valores predeterminados cuando se realiza una copia de seguridad. Esto puede causar un rendimiento menor cuando se realizan copias de seguridad. Para evitar que esto afecte a tu instancia, puedes cambiar el período de copia de seguridad cuando el uso de la instancia sea bajo. Para obtener más información, consulta Crea y administra copias de seguridad automáticas y bajo demanda.
innodb_flush_log_at_timeout

innodb_flush_log_at_timeout te permite modificar la frecuencia de vaciados de páginas para evitar que afecte el rendimiento de la confirmación de grupos de registros binarios. La configuración predeterminada es una vez por segundo.

Cloud SQL extendió esta marca para admitir la especificación de un período 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 us

En el caso de ciertas cargas de trabajo, no es aceptable usar un nivel de detalle completo para vaciar páginas en términos de posibles pérdidas de transacciones. En su lugar, puedes vaciar las páginas con un nivel de detalle de microsegundos para mantener el rendimiento sin comprometer significativamente la durabilidad.

Los períodos de microsegundos para la marca innodb_flush_log_at_timeout solo son aplicables cuando la marca de durabilidad innodb_flush_log_at_trx_commit se establece en 2.

El vaciado de las páginas puede ocurrir con más o menos frecuencia que el valor especificado para innodb_flush_log_at_timeout y el valor no es el límite superior.

innodb_redo_log_capacity, innodb_log_file_size

En Cloud SQL para MySQL 8.4 y versiones anteriores, si configuras un valor para la marca innodb_redo_log_capacity, Cloud SQL ignorará cualquier valor que definas 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 usa 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 configuras innodb_log_file_size con un valor de 10 GB y el valor predeterminado de innodb_log_file_in_group es 2, el valor efectivo del tamaño de tu registro de rehacer de InnoDB será de 20 GB.

En Cloud SQL para MySQL 9.7 y versiones posteriores, se quitaron las marcas innodb_log_file_size y innodb_log_file_in_group de Cloud SQL. Los valores predeterminados de la marca innodb_redo_log_capacity se basan en la edición y la capacidad de RAM de la instancia, y se indican en la siguiente tabla.

Edición de Cloud SQLRAMValor predeterminado
Edición Enterprise de Cloud SQLCualquier tamaño1 GB
Edición Enterprise Plus de Cloud SQLMenos de 100 GB1 GB
Edición Enterprise Plus de Cloud SQLMás de 100 GB1.5 GB
max_heap_table_size, tmp_table_size

Se puede agotar la memoria de instancia disponible cuando la configuración tmp_table_size y max_heap_table_size es muy alta para la cantidad de consultas simultáneas que procesa la instancia. Si la memoria se agota, la instancia falla y se reinicia.

Para obtener más información sobre cómo trabajar con estas marcas, consulta Cómo MySQL usa tablas temporales internas y 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 sea compatible con la marca; primero debes inhabilitar esta marca.

En el caso de las instancias de MySQL 8.0 y versiones posteriores con entre 12 y 15 GB de RAM, el valor predeterminado de performance_schema es on. Sin embargo, los instrumentos predeterminados del esquema de rendimiento están inhabilitados. Para obtener más información sobre los instrumentos predeterminados de performance_schema, consulta La tabla setup_instruments (MySQL 8.0) o La tabla setup_instruments (MySQL 8.4). Si deseas habilitar y usar los instrumentos del esquema de rendimiento en una instancia con 12 a 15 GB de RAM, debes establecer explícitamente el parámetro performance_schema en on en lugar de diferir al valor predeterminado. En las instancias de MySQL 8.0 y versiones posteriores con ≥15 GB de RAM, el valor predeterminado de performance_schema es on, y los instrumentos predeterminados del esquema de rendimiento están habilitados.

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 más instrucciones de SQL que están configuradas para ejecutarse en uno o más intervalos especificados. El valor predeterminado para MySQL 5.7 es OFF y el valor predeterminado para 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 establece en ON para una réplica de lectura, puede causar errores según el tipo de declaraciones definidas en los eventos:
  • Si tu evento programado es un evento write en una réplica de lectura, provoca un error debido a que las réplicas de lectura son de solo lectura. Para obtener más información, consulta Réplicas de lectura.
  • Si tu evento programado contiene una operación de detención, como kill, event_scheduler la aplica a la réplica. Esto detiene la replicación y borra la réplica.
Para evitar estos errores, establece la marca event_scheduler como OFF cuando crees réplicas. Para obtener más información sobre cómo habilitar o inhabilitar event_scheduler, consulta Configura marcas de base de datos.
replica_skip_errors,slave_skip_errors
Configurar la marca replica_skip_errors o slave_skip_errors puede causar problemas de replicación. En general, si se produce un error mientras se ejecuta una instrucción, la replicación se detiene. El uso de esta marca hará que se omita el error y la replicación continúe, lo que genera incoherencia entre la instancia principal y la réplica. Esto también puede dificultar la solución de problemas de replicación. Cloud SQL solo recomienda usar esta marca si es necesario. Si tienes errores de replicación, consulta la página Solución de 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 gcloud CLI. Para usar estas marcas, usa el siguiente comando:
SET GLOBAL FLAG_NAME=FLAG_VALUE
El uso del comando SET GLOBAL requiere el privilegio CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN, que se otorga al rol cloudsqlsuperuser. Nota: El privilegio CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN solo está disponible en MySQL 8.0 para Cloud SQL. Para obtener más información sobre cómo otorgarle acceso especial de privilegio a un usuario específico, consulta Acerca de los usuarios de MySQL. Estas marcas no se mantienen. Cuando tu instancia de Cloud SQL se vuelve a crear o se reinicia, la configuración de la marca se restablece al valor predeterminado.
caching_sha2_password_proxy_users

Usa la marca caching_sha2_password_proxy_users para la conectividad del usuario proxy en MySQL 9.7. Como el método de autenticación mysql_native_password ya no está disponible en MySQL 9.7, no puedes usar la marca mysql_native_password_proxy_users.

La marca caching_sha2_password_proxy_users controla si el complemento de autenticación integrado caching_sha2_password admite usuarios proxy. La marca no tiene efecto a menos que se habilite la variable de sistema check_proxy_users.

binlog_order_commits

El valor predeterminado para 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 en el mismo grupo de registro binario se confirmarán en un orden diferente al que se escribieron en el registro binario. Esto afecta las siguientes operaciones que ejecutan transacciones en el orden del registro binario:

  • Replicación: Puede generar incoherencia de datos entre la fuente y las réplicas
  • Point-in-time-recovery: Puede generar incoherencia de datos entre el estado restablecido de la PITR y el estado histórico
optimizer_switch,optimizer_trace,optimizer_trace_features

Las marcas del optimizador tienen valores separados por comas. Puedes establecer estas marcas con la Google Cloud consola o la CLI de gcloud. Para obtener más información sobre cómo configurar esta marca con la consola, consulta Configura marcas de base de datos. Si usas la CLI de gcloud, puedes especificar el valor de estas marcas de las siguientes dos maneras:

Para configurar varias marcas secundarias del optimizador en un comando, usa el delimitador de comas para separar cada nombre de marca. Si estableces un solo valor de marca secundaria con el comando de la CLI de gcloud, se reemplazan todas las marcas secundarias establecidas previamente.

Por ejemplo, si ejecutas el siguiente comando, el valor esperado para la marca secundaria batched_key_access se establece en on y todas las demás marcas secundarias para optimizador_flags se establecen en 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 marca secundaria block_nested_loop se establece en on y todas las demás marcas secundarias para optimizer_switch se reemplazan y se establecen en sus valores predeterminados.

gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=block_nested_loop=on

Esto incluye batched_key_access, que el comando anterior configuró como on. Para conservar todas las marcas secundarias configuradas previamente y agregar nuevas, debes agregar los valores de todas las marcas secundarias que desees configurar cuando agregues una nueva marca secundaria.

En Cloud SQL para MySQL 9.7, puedes especificar la marca hypergraph_optimizer=on para habilitar el optimizador de hipergrafo. Para obtener más información sobre las optimizaciones intercambiables y el optimizador de hipergrafos, consulta Optimizaciones intercambiables y El optimizador de hipergrafos ya está disponible en MySQL 9.7 Community Edition.

Marcas del sistema modificadas en Cloud SQL

Todas las demás marcas del sistema de base de datos que no aparecen en la sección marcas admitidas se denominan marcas administradas. En el caso de ciertas marcas administradas, Cloud SQL establece la marca en un valor diferente a la predeterminada para garantizar que las instancias de Cloud SQL se ejecuten de manera confiable. No puedes cambiar los valores en estas marcas del sistema. En la siguiente lista, se muestran las marcas administradas con una configuración no predeterminada:
Nombre de la variable Configuración en Cloud SQL. Notas
binlog_format ROW Solo en MySQL 5.6
binlog_error_action ABORT_SERVER Solo en MySQL 5.6
innodb_doublewrite_pages 64 Se aplica a MySQL 8.0.26 y versiones posteriores
innodb_file_format Barracuda Solo en MySQL 5.6
memlock true
skip_name_resolve
relay_log_info_repository TABLA Se quitó en MySQL 8.4
relay_log_recovery
master_info_repository TABLA Se quitó en MySQL 8.4
rpl_semi_sync_master_enabled 1
rpl_semi_sync_master_timeout 3000
admin_address 127.0.0.1 Solo difiere en MySQL 8.0 y versiones posteriores.
create_admin_listener_thread
port-open-timeout 120 Solo 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 Marca del sistema partial_revokes en MySQL 8.0.

Marca del sistema partial_revokes en MySQL 8.0 y versiones posteriores

La marca partial_revokes te permite limitar el acceso de los usuarios a un esquema de base de datos. En Cloud SQL para MySQL 8.0 y versiones posteriores, la marca partial_revokes se configura como ON. Esto limita el uso de caracteres comodines cuando otorgas o revocas privilegios del usuario a esquemas de bases de datos en MySQL 8.0 Actualiza tu declaración GRANT para usar el nombre completo del esquema de bases de datos en lugar de usar caracteres comodín.

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

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

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

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

  1. Puedes otorgar permisos a bases de datos específicas con los nombres completos de las bases de datos, 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, puedes usar el comando grant y revoke para otorgar privilegios de usuario en todos los esquemas de bases de datos y restringir el acceso a algunos esquemas de bases de datos.

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

    Esto otorga acceso a todos los esquemas de bases de datos y, al mismo tiempo, restringe el acceso a test3_foobar.*.

Filtros de replicación

Los filtros de replicación solo se pueden configurar en réplicas de Cloud SQL. Cada filtro de replicación se establece como una marca única 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 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 coma. El valor ^~^ del comando anterior es necesario para las marcas de bases de datos que son valores separados por comas.

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

  • Si la réplica está en mal estado, los datos filtrados por los filtros de replicación pueden aparecer en la réplica, ya que Cloud SQL usa datos de origen de la instancia principal para volver a compilar la instancia.
  • No puedes establecer filtros de replicación en el esquema mysql.
  • Las reglas de filtro de replicación no se aplican a las exportaciones sin servidores.

Marcas de asesor de índices

La siguiente es una lista de marcas de base de datos que Cloud SQL para MySQL usa para habilitar y administrar funciones específicas del asesor de índices.

Nombre de la marca Tipo
Notas y valores aceptables
¿Reinicio
obligatorio?
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

La siguiente lista contiene los nombres de marcas que cambiaron en Cloud SQL para MySQL 8.0.26 y versiones posteriores.

Nombre de la marca obsoleto Nombre de la marca nueva
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 obsoleta, edita la instancia de Cloud SQL, borra el nombre de la marca obsoleta y agrega la marca nueva a la instancia. Para obtener más información, consulta Configura una marca de base de datos.

Soluciona problemas

Problema Soluciona problemas
Después de habilitar una marca, la instancia ejecuta bucles de fallas. Comunícate con la asistencia al cliente para solicitar la eliminación de una marca seguida de una operación de hard drain. Esto obliga a la instancia a reiniciarse en un host diferente con una configuración nueva, sin la marca ni la configuración no deseadas.
Verás el mensaje de error Bad syntax for dict arg cuando intentes configurar una marca. Los valores de los parámetros complejos, como las listas separadas por comas, requieren un tratamiento especial cuando se usan con comandos de gcloud.

¿Qué sigue?