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 PostgreSQL, 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 a fin de habilitar por completo la función deseada.
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, la réplica también se reiniciará para alinearse con la configuración actual de la instancia.
Configura marcas de base de datos
Cómo definir una marca de base de datos
Console
- En Google Cloud Console, crea un proyecto nuevo de Cloud Console o selecciona el nombre de un proyecto existente para abrirlo.
- Abre la instancia y haz clic en Editar.
- Desplázate hacia abajo hasta la sección Marcas.
- 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.
- Haz clic en Guardar para guardar los cambios.
- 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 de un signo igual (“=”).
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 siguientes, realiza los siguientes reemplazos:
- project-id: El ID del proyecto
- instance-id: El ID de la instancia
Método HTTP y URL:
PATCH https://www.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 siguiente:
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 todas las marcas a su valor predeterminado
Console
- En Google Cloud Console, crea un proyecto nuevo de Cloud Console o selecciona el nombre de un proyecto existente para abrirlo.
- Abre la instancia y haz clic en Editar.
- Abre la sección Marcas de base de datos.
- Haz clic en las X ubicadas junto a todas las marcas que se muestran.
- 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 si deseas que se reinicie la instancia.
REST v1beta4
Para borrar todas las marcas de una instancia existente, haz lo siguiente:
Antes de usar cualquiera de los datos de solicitud siguientes, realiza los siguientes reemplazos:
- project-id: El ID del proyecto
- instance-id: El ID de la instancia
Método HTTP y URL:
PATCH https://www.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 siguiente:
Ve los valores actuales de las marcas de base de datos
Para ver todos los valores actuales de la configuración de PostgreSQL, accede a tu instancia con el clientepsql
y, luego, ingresa la siguiente declaración:
SELECT name, setting FROM pg_settings;
Ten en cuenta que solo puedes cambiar el valor para marcas compatibles (como se indica a continuación).
Cómo determinar qué marcas de base de datos se configuraron para una instancia
Para ver que marcas se configuraron para una instancia de Cloud SQL, sigue estos pasos:
Console
- En Google Cloud Console, crea un proyecto nuevo de Cloud Console o selecciona el nombre de un proyecto existente para abrirlo.
- 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 v1beta4
Para enumerar las marcas configuradas para una instancia, haz lo siguiente:
Antes de usar cualquiera de los datos de solicitud siguientes, realiza los siguientes reemplazos:
- project-id: El ID del proyecto
- instance-id: El ID de la instancia
Método HTTP y URL:
GET https://www.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 compatibles
En el caso de una marca determinada, es posible que Cloud SQL sea compatible con un rango diferente del parámetro o la opción correspondiente de PostgreSQL.
A | C | D | E | F | G | H | I | J | L | M | O | P | R | S | T | V | W
.Marca de Cloud SQL | Tipo Notas y valores aceptables |
¿Reinicio obligatorio? |
¿En versión beta? |
---|---|---|---|
autovacuum | boolean on |off |
No | No |
autovacuum_analyze_scale_factor | float 0 ... 100 |
No | No |
autovacuum_analyze_threshold | integer 0 ... 2147483647 |
No | No |
autovacuum_freeze_max_age | integer 100000 ... 2000000000 |
Sí | Sí |
autovacuum_max_workers | integer 1 … varies (see note)
|
Sí | No |
autovacuum_multixact_freeze_max_age | integer 10000 ... 2000000000 |
Sí | Sí |
autovacuum_naptime | integer 1 … 2147483 s |
No | No |
autovacuum_vacuum_cost_delay | integer 0 … 100 ms, o -1 para usar el valor vacuum_cost_delay |
No | No |
autovacuum_vacuum_cost_limit | integer 0 … 10000 o -1 para usar el valor vacuum_cost_limit |
No | No |
autovacuum_vacuum_scale_factor | float 0 ... 100 |
No | No |
autovacuum_vacuum_threshold | integer 0 ... 2147483647 |
No | No |
autovacuum_work_mem | integer 0 … 2147483647 KB o -1 para usar el valor maintenance_work_mem |
No | Sí |
checkpoint_completion_target | float 0.0 ... 1.0 |
No | No |
checkpoint_timeout | integer 30 … 86400 s |
No | Sí |
checkpoint_warning | integer 0 … 2147483647 s |
No | No |
cloudsql.enable_pgaudit | boolean on | off
|
Sí | No |
cloudsql.iam_authentication | boolean on | off
opción predeterminada: off |
Sí | Sí |
commit_delay | integer 0 ... 100000 |
No | No |
commit_siblings | integer 0 ... 1000 |
No | No |
constraint_exclusion | enumeration partition |on |off |
No | No |
cpu_index_tuple_cost | float 0.0 ... inf |
No | No |
cpu_operator_cost | float 0.0 ... inf |
No | No |
cpu_tuple_cost | float 0.0 ... inf |
No | No |
cursor_tuple_fraction | float 0.0 ... 1.0 |
No | No |
deadlock_timeout | integer 1 … 2147483647 ms |
No | No |
default_statistics_target | integer 1 ... 10000 |
No | No |
default_tablespace | string |
No | No |
default_transaction_deferrable | boolean on |off |
No | No |
default_transaction_isolation | enumeration serializable |'repeatable read' |'read committed' |'read uncommitted' |
No | No |
effective_cache_size | integer El intervalo de tamaño es del 10% al 70% de la memoria de la instancia. La unidad es 8 KB |
No | No |
enable_bitmapscan | boolean on |off |
No | No |
enable_hashagg | boolean on |off |
No | No |
enable_hashjoin | boolean on |off |
No | No |
enable_indexonlyscan | boolean on |off |
No | No |
enable_indexscan | boolean on |off |
No | No |
enable_material | boolean on |off |
No | No |
enable_mergejoin | boolean on |off |
No | No |
enable_nestloop | boolean on |off |
No | No |
enable_seqscan | boolean on |off |
No | No |
enable_sort | boolean on |off |
No | No |
enable_tidscan | boolean on |off |
No | No |
force_parallel_mode | enumeration off |on |regress |
No | No |
from_collapse_limit | integer 1 ... 2147483647 |
No | No |
geqo | boolean on |off |
No | No |
geqo_effort | integer 1 ... 10 |
No | No |
geqo_generations | integer 0 ... 2147483647 |
No | No |
geqo_pool_size | integer 0 ... 2147483647 |
No | No |
geqo_seed | float 0.0 ... 1.0 |
No | No |
geqo_selection_bias | float 1.5 ... 2.0 |
No | No |
geqo_threshold | integer 2 ... 2147483647 |
No | No |
gin_fuzzy_search_limit | integer 0 ... 2147483647 |
No | No |
gin_pending_list_limit | integer 64 … 2147483647 KB |
No | No |
hot_standby_feedback | boolean on |off |
No | No |
idle_in_transaction_session_timeout | integer 0 … 2147483647 ms |
No | No |
join_collapse_limit | integer 1 ... 2147483647 |
No | No |
lock_timeout | integer 0 … 2147483647 ms |
No | No |
log_autovacuum_min_duration | integer 0 … 2147483647 ms o -1 para inhabilitar |
No | No |
log_checkpoints | boolean on |off |
No | No |
log_connections | boolean on |off |
No | No |
log_disconnections | boolean on |off |
No | No |
log_duration | boolean on |off |
No | No |
log_error_verbosity | enumeration terse |default |verbose |
No | No |
log_executor_stats | boolean on |off |
No | No |
log_hostname | boolean on |off |
No | No |
log_lock_waits | boolean on |off |
No | No |
log_min_duration_statement | integer -1 … 2147483647 ms |
No | No |
log_min_error_statement | enumeration debug5 |debug4 |debug3 |debug2 |debug1 |info |notice |warning |error |log |fatal |panic |
No | No |
log_min_messages | enumeration debug5 |debug4 |debug3 |debug2 |debug1 |info |notice |warning |error |log |fatal |panic |
No | No |
log_parser_stats | boolean on |off |
No | No |
log_planner_stats | boolean on |off |
No | No |
log_replication_commands | boolean on |off |
No | No |
log_statement | enumeration none | ddl | mod | all
Se configura en mod para registrar todas las declaraciones del lenguaje de definición de datos (DDL), además de declaraciones de modificación de datos, como INSERT , UPDATE , DELETE y TRUNCATE |
No | No |
log_statement_stats | boolean on | off
Es posible que no se habilite junto con log_parser_stats , log_planner_stats o log_executor_stats . |
No | No |
log_temp_files | integer 0 … 2147483647 KB o -1 para inhabilitarlo |
No | No |
maintenance_work_mem | integer 1024 … 2147483647 KB |
No | Sí |
max_connections | integer 14 … varies (see note)
El valor en las réplicas debe ser >= al valor en el principal. Los cambios en el principal se propagan a las réplicas que tienen un valor menor que el valor nuevo del principal o que no se cambió del valor predeterminado. |
Sí | Sí |
max_locks_per_transaction | integer 10 … 2147483647 El valor en las réplicas debe ser >= al valor en el principal. Los cambios en el principal se propagan a las réplicas que tienen un valor menor que el valor nuevo del principal o que no se cambió del valor predeterminado. |
Sí | Sí |
max_prepared_transactions | integer 0 …262143 El valor en las réplicas debe ser >= al valor en el principal. Los cambios en el principal se propagan a las réplicas que tienen un valor menor que el valor nuevo del principal o que no se cambió del valor predeterminado. |
Sí | Sí |
max_standby_archive_delay | integer 0 … 2147483647 ms o -1 para esperar por siempre |
No | No |
max_standby_streaming_delay | integer 0 … 2147483647 ms o -1 para esperar por siempre |
No | No |
max_wal_size | integer 2 … 2147483647
La unidad es de 1 MB para Postgres 10, 11 , 12 y 13. La unidad es de 16 MB (el tamaño del archivo WAL) para la versión 9.6. |
No | Sí |
min_parallel_relation_size | integer 0 … 715827882 La unidad es de 8 KB |
No | No |
old_snapshot_threshold | integer 0 … 86400 min o -1 para inhabilitarlo |
Sí | No |
parallel_setup_cost | float 0.0 ... inf |
No | No |
parallel_tuple_cost | float 0.0 ... inf |
No | No |
pg_stat_statements.max | integer 100 ... 2147483647 |
Sí | No |
pg_stat_statements.save | boolean on |off |
No | No |
pg_stat_statements.track | enumeration none |top |all |
No | No |
pg_stat_statements.track_utility | boolean on |off |
No | No |
pgaudit.log | enumeration read | write |
function | role | ddl |
misc | misc_set | all|none
Puedes proporcionar varias clases con una lista separada por comas y quitar una clase si colocas un signo |
No | No |
pgaudit.log_catalog | boolean on | off
El valor predeterminado es |
No | No |
pgaudit.log_client | boolean on | off
El valor predeterminado es |
No | No |
pgaudit.log_level | enumeration debug5 |
debug4 | debug3 | debug2 |
debug1 | info | notice |
warning | error | log
El valor predeterminado es |
No | No |
pgaudit.log_parameter | boolean on | off
El valor predeterminado es |
No | No |
pgaudit.log_relation | boolean on | off
El valor predeterminado es |
No | No |
pgaudit.log_statement_once | boolean on | off
El valor predeterminado es |
No | No |
pgaudit.role | string
No hay ningún valor predeterminado. |
No | No |
random_page_cost | float 0.0 ... inf |
No | No |
replacement_sort_tuples | integer 0 ... 2147483647 |
No | No |
ssl_max_protocol_version | enumeration Postgres 12: establece la versión máxima del protocolo SSL/TLS que se usará. Los valores válidos son de ssl_min_protocol_version , con la adición de una string vacía, lo que permite especificar cualquier versión de protocolo. |
No | No |
ssl_min_protocol_version | enumeration Postgres 12: establece la versión mínima del protocolo SSL/TLS que se usará. Actualmente, los valores válidos son: TLSv1 , TLSv1.1 , TLSv1.2 y TLSv1.3 .
El valor predeterminado es |
No | No |
standard_conforming_strings | boolean on |off |
No | No |
synchronize_seqscans | boolean on |off |
No | No |
temp_buffers | integer 100 … 1073741823 La unidad es de 8 KB |
No | Sí |
temp_file_limit | integer 1048576 … 2147483647 KB |
No | No |
trace_notify | boolean on |off |
No | No |
trace_recovery_messages | enumeration debug5 |debug4 |debug3 |debug2 |debug1 |log |notice |warning |error |
No | No |
trace_sort | boolean on |off |
No | No |
track_activities | boolean on |off |
No | No |
track_activity_query_size | integer 100 ... 102400 |
Sí | No |
track_commit_timestamp | boolean on |off |
Sí | No |
track_counts | boolean on |off |
No | No |
track_functions | enumeration none |pl |all |
No | No |
track_io_timing | boolean on |off |
No | No |
vacuum_cost_delay | integer 0 … 100 ms |
No | No |
vacuum_cost_limit | integer 1 ... 10000 |
No | No |
vacuum_freeze_min_age | integer 0 ... 1000000000 |
No | No |
vacuum_freeze_table_age | integer 0 ... 2000000000 |
No | No |
vacuum_multixact_freeze_min_age | integer 0 ... 1000000000 |
No | No |
vacuum_multixact_freeze_table_age | integer 0 ... 2000000000 |
No | No |
work_mem | integer 64 … 2147483647 KB |
No | Sí |
Soluciona problemas
Haz clic en los vínculos de la tabla para obtener más información:
Situación | Posible problema | Solución |
---|---|---|
No hay ninguna marca para configurar la zona horaria. | No se admite una marca de zona horaria. | Hay algunas soluciones alternativas. |
No hay ninguna marca para establecer la zona horaria
PostgreSQL y SQL Server para Cloud SQL no admiten una marca de zona horaria para ajustarla según las necesidades del usuario.
Posible problema
No se admite una marca de zona horaria.
Solución
Puedes configurar la zona horaria por sesión, pero esto vencerá cuando cierres la sesión. Lo mejor es conectarte a la base de datos y establecer su zona horaria de la manera deseada, ya sea por usuario o por base de datos:
ALTER DATABASE dbname SET TIMEZONE TO 'timezone';
ALTER USER username SET TIMEZONE TO 'timezone';
Esta configuración se mantendrá incluso después de que se cierre la sesión, lo que imita la configuración de .conf
.
Próximos pasos
- Obtén más información sobre la configuración del servidor de PostgreSQL.