Configurazione dei flag di database

Questa pagina descrive come configurare i flag di database per Cloud SQL ed elenca i flag che puoi impostare per la tua istanza. Puoi usare i flag di database per molte operazioni, tra cui la regolazione dei parametri MySQL, la regolazione delle opzioni e la configurazione e l'ottimizzazione di un'istanza.

In alcuni casi, l'impostazione di un flag potrebbe richiedere l'impostazione di un altro flag per abilitare completamente la funzionalità desiderata. Ad esempio, per abilitare il logging lento delle query, devi impostare il flag slow_query_log su on e il flag log_output su FILE per rendere i log disponibili utilizzando Esplora log della console Google Cloud.

Quando imposti, rimuovi o modifichi un flag per un'istanza di database, il database potrebbe essere riavviato. Il valore del flag rimane per l'istanza finché non lo rimuovi. Se l'istanza è l'origine di una replica e l'istanza viene riavviata, viene riavviata anche la replica per allinearsi alla configurazione attuale dell'istanza.

Configurazione dei flag di database

Imposta un flag di database

Console

  1. Nella console Google Cloud, seleziona il progetto che contiene l'istanza Cloud SQL per la quale vuoi impostare un flag di database.
  2. Apri l'istanza e fai clic su Modifica.
  3. Scorri verso il basso fino alla sezione Flag.
  4. Per impostare un flag che non è stato impostato in precedenza sull'istanza, fai clic su Aggiungi elemento, scegli il flag dal menu a discesa e imposta il relativo valore.
  5. Fai clic su Salva per salvare le modifiche.
  6. Conferma le modifiche nella sezione Flag della pagina Panoramica.

gcloud

Modifica l'istanza:

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

Questo comando sovrascriverà tutti i flag di database impostati in precedenza. Per conservarli e aggiungerne di nuovi, includi i valori per tutti i flag che vuoi impostare nell'istanza. Qualsiasi flag non incluso nello specifico è impostato sul valore predefinito. Per i flag che non prendono un valore, specifica il nome della segnalazione seguito da un segno di uguale ("=").

Ad esempio, per impostare i flag general_log, skip_show_database e wait_timeout, puoi utilizzare il seguente comando:

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

Terraform

Per aggiungere flag di database, utilizza una risorsa 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
}

Applica le modifiche

Per applicare la tua configurazione Terraform a un progetto Google Cloud, completa i passaggi nelle sezioni seguenti.

Prepara Cloud Shell

  1. Avvia Cloud Shell.
  2. Imposta il progetto Google Cloud predefinito a cui vuoi applicare le configurazioni Terraform.

    Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.

Prepara la directory

Ogni file di configurazione Terraform deve avere la propria directory (chiamata anche modulo principale).

  1. In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome del file deve avere l'estensione .tf, ad esempio main.tf. In questo tutorial, il file è denominato main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.

    Copia il codice campione nel nuovo oggetto main.tf.

    Facoltativamente, copia il codice da GitHub. Questa opzione è consigliata se lo snippet Terraform fa parte di una soluzione end-to-end.

  3. Esamina e modifica i parametri di esempio da applicare al tuo ambiente.
  4. Salva le modifiche.
  5. Inizializza Terraform. Devi eseguire questa operazione una sola volta per directory.
    terraform init

    Facoltativamente, per utilizzare la versione più recente del provider Google, includi l'opzione -upgrade:

    terraform init -upgrade

Applica le modifiche

  1. Esamina la configurazione e verifica che le risorse che Terraform creerà o aggiornerà soddisfino le tue aspettative:
    terraform plan

    Apporta le correzioni necessarie alla configurazione.

  2. Applica la configurazione Terraform eseguendo questo comando e inserendo yes al prompt:
    terraform apply

    Attendi finché in Terraform non viene visualizzato il messaggio "Applicazione completata!".

  3. Apri il progetto Google Cloud per visualizzare i risultati. Nella console Google Cloud, vai alle risorse nella UI per assicurarti che Terraform le abbia create o aggiornate.

Elimina le modifiche

Per eliminare le modifiche:

  1. Per disabilitare la protezione dall'eliminazione, imposta l'argomento deletion_protection nel file di configurazione di Terraform su false.
    deletion_protection =  "false"
  2. Applica la configurazione Terraform aggiornata eseguendo questo comando e inserendo yes al prompt:
    terraform apply
  1. Per rimuovere le risorse applicate in precedenza con la tua configurazione Terraform, esegui questo comando e inserisci yes al prompt:

    terraform destroy

REST v1

Per impostare un flag per un database esistente:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Ad esempio, per impostare il flag general_log per un utilizzo di database esistente:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Se esistono flag esistenti configurati per il database, modifica il comando precedente per includerli. Il comando PATCH sovrascrive i flag esistenti con quelli specificati nella richiesta.

REST v1beta4

Per impostare un flag per un database esistente:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Ad esempio, per impostare il flag general_log per un utilizzo di database esistente:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Se esistono flag esistenti configurati per il database, modifica il comando precedente per includerli. Il comando PATCH sovrascrive i flag esistenti con quelli specificati nella richiesta.

Cancella i valori predefiniti di tutti i flag

Console

  1. Nella console Google Cloud, seleziona il progetto che contiene l'istanza Cloud SQL per la quale vuoi cancellare tutti i flag.
  2. Apri l'istanza e fai clic su Modifica.
  3. Apri la sezione Flag di database.
  4. Fai clic sulla X accanto a tutte le segnalazioni mostrate.
  5. Fai clic su Salva per salvare le modifiche.

gcloud

Cancella tutti i flag sui valori predefiniti in un'istanza:

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

Ti viene chiesto di confermare che l'istanza verrà riavviata.

REST v1

Per cancellare tutti i flag per un'istanza esistente:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

REST v1beta4

Per cancellare tutti i flag per un'istanza esistente:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Visualizza i valori attuali dei flag di database

Per visualizzare tutti i valori attuali delle variabili di sistema MySQL, accedi all'istanza con il client mysql e inserisci la seguente istruzione:

 SHOW VARIABLES;

Tieni presente che puoi modificare il valore solo per i flag supportati (come elencato di seguito).

Determina quali flag di database sono stati impostati per un'istanza

Per vedere quali flag sono stati impostati per un'istanza di Cloud SQL:

Console

  1. Nella console Google Cloud, seleziona il progetto che contiene l'istanza Cloud SQL per la quale vuoi visualizzare i flag di database impostati.
  2. Seleziona l'istanza per aprire la pagina Panoramica istanza.

    I flag di database impostati sono elencati nella sezione Flag di database.

gcloud

Ottieni lo stato dell'istanza:

gcloud sql instances describe INSTANCE_NAME

Nell'output, i flag di database sono elencati sotto settings come raccolta databaseFlags. Per maggiori informazioni sulla rappresentazione dei flag nell'output, consulta Rappresentazione delle risorse delle istanze.

REST v1

Per elencare i flag configurati per un'istanza:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Nell'output, cerca il campo databaseFlags.

REST v1beta4

Per elencare i flag configurati per un'istanza:

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Nell'output, cerca il campo databaseFlags.

Flag gestiti da Cloud SQL

Cloud SQL regola determinati flag di sistema in base al tipo di macchina dell'istanza.

innodb_buffer_pool_instances
  • 1 per db-f1-micro e db-g1-small.
  • 1 se RAM < 7,5 GB.
  • 2 se 7,5 GB <= RAM < 13 GB.
  • 4 se 13 GB <= RAM < 26 GB.
  • 8 se RAM >= 26 GB.

Flag supportati

I flag supportati in Cloud SQL sono quelli più richiesti per MySQL. I flag non menzionati di seguito non sono supportati.

Per un determinato flag, Cloud SQL potrebbe supportare un valore o un intervallo diverso rispetto al parametro o all'opzione MySQL corrispondente.

I flag si applicano a tutte le versioni di MySQL supportate da Cloud SQL, tranne dove indicato.

A | B | C | D | E | F | G | G | I | L | L | N | ORT

Flag Cloud SQL Tipo
Valori e note accettabili
Riavviare
è necessario?
activate_all_roles_on_login boolean
on | off
predefinita: off
No
commit automatico boolean
on | off
predefinita: on
No
auto_increment_increment integer
1 ... 65535
No
auto_increment_offset integer
1 ... 65535
No
automatic_sp_privileges boolean
on | off
predefinita: on
No
back_log integer
1 ... 65535
predefinita: max_connections
binlog_cache_size integer
4096 ... 9223372036854775807
No
binlog_expire_logs_seconds integer
0 o 86400 (1 day) ... 4294967295 (max value)
Il valore predefinito è 2592000, che equivale a 30 giorni.

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
binlog_group_commit_sync_delay 0 ... 1000000

Supportata in MySQL 5.7, 8.0.

Il valore predefinito è 0.

No
binlog_group_commit_sync_no_delay_count 0 ... 1000000

Supportata in MySQL 5.7, 8.0.

Il valore predefinito è 0.

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

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

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

Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

No
binlog_transaction_dependency_tracking enumeration

Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

No
block_encryption_mode string
aes-keylen-mode
valore predefinito: aes-128-ECB
No
bulk_insert_buffer_size integer
0 ... 4294967295 Predefinito per
: 8388608
No
collation_connection string Predefinito per
:
MySQL 8.0 - utf8mb4_0900_ai_ci

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
collation_server string
default:
MySQL 5.7 - utf8_general_ci
MySQL 8.0 - utf8mb4_0900_ai_ci
No
character_set_client string

Predefinito:
MySQL 5.7: utf8
MySQL 8.0: utf8mb4

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
character_set_connection string
Predefinito:
MySQL 5.7: utf8
MySQL 8.0: utf8mb4

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
character_set_results string
utf8 o utf8mb4
per impostazione predefinita:
MySQL 5.7: utf8
MySQL 8.0: utf8mb4

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
character_set_server string
utf8 o utf8mb4 (opzione consigliata)
check_proxy_users boolean
on | off
predefinita: off
No
cloudsql_allow_analyze_table boolean on | off
valore predefinito: off
No
cloudsql_iam_authentication boolean on | off
valore predefinito: off
Supportato in MySQL 5.7 e 8.0 per Cloud SQL.
No
cloudsql_ignore_innodb_encryption boolean on | off
valore predefinito: 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_dbcreate_usercreate_userdrop_userrename_useralter_useralter_usercreate_tablecreate_indexalter_tabledrop_tabledrop_indexcreate_viewdrop_viewrename_tableupdateupdateinsertinsert_selectdeletetruncatereplacereplace_selectdelete_multiupdate_multiloadselectcall_procedureconnectdisconnectgrantgrantrevokerevoke_allshow_triggersshow_create_procshow_create_funcshow_procedure_codeshow_function_codeshow_create_eventshow_eventsshow_create_triggershow_grantsshow_binlog_eventsshow_relaylog_events
No
cloudsql_mysql_audit_data_masking_regex string
max_string_length: 2048
predefinita: fai clic qui.
No
cloudsql_mysql_audit_log_write_period integer
0...5000 millisecondi
predefinita: 500 millisecondi
No
cloudsql_mysql_audit_max_query_length integer
-1...1073741824
predefinita: -1
No
cloudsql_vector boolean on | off
predefinita: off
cloudsql_vector_max_mem_size integer
1073741824...innodb_buffer_pool_size/2
predefinito: 1073741824 in byte
completion_type enumeration
NO_CHAIN (predefinito), CHAIN o RELEASE
No
concurrent_insert enumeration
NEVER, AUTO (valore predefinito) o ALWAYS
No
connect_timeout integer
2 ... 31536000 Predefinito per
: 10
No
cte_max_recursion_depth integer
0 ... 4294967295 Predefinito per
: 1000
No
default_authentication_plugin string
mysql_native_password|caching_sha2_password
default_password_lifetime integer 0...65535
predefinito: 0
No
default_time_zone string
Esistono due modi per specificare i fusi orari: come offset e nomi di fusi orari. Ad esempio, +00:00 è la differenza tra il fuso orario di Londra (che è nel fuso orario UTC) e Europe/London è il nome del suo fuso orario.

Puoi utilizzare i valori per specificare gli offset di fuso orario, da -12:59 a +13:00. Gli zeri iniziali sono obbligatori.

Quando utilizzi i nomi di fusi orari, è supportata la regolazione automatica dell'ora legale. Gli scarti di fuso orario non sono supportati. Consulta un elenco di nomi di fusi orari supportati da Cloud SQL per MySQL. Devi aggiornare questo flag manualmente, sull'istanza principale e in tutte le repliche di lettura, perché ne tenga conto.

Per impostare il fuso orario senza causare il riavvio dell'istanza Cloud SQL, utilizza il comando set time_zone=timezone_offset o timezone_name con il flag init_connect.

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

Se utilizzi lo scheduler di eventi, configura l'istanza con un criterio di attivazione SEMPRE per garantire l'esecuzione degli eventi pianificati.

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
expire_logs_days integer
0 ... 99
Il valore predefinito è 0, il che significa che nessuna rimozione automatica.

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
explicit_defaults_for_timestamp boolean
on | off

No
flush_time integer
0 ... 31536000 Predefinito per
: 0
No
foreign_key_checks boolean
on | off
predefinita: on

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

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

Per ulteriori informazioni sui log generali, consulta la sezione Suggerimenti.

No
generated_random_password_length integer 5-255
predefinito: 20
No
group_concat_max_len integer
4 ... 17179869184
No
gtid_executed_compression_period integer
0 ... 4294967295 Predefinito per
(fino alla versione 8.0.22): 1000 Predefinito per
(versione 8.0.23 e successive): 0
No
histogram_generation_max_mem_size integer
1000000 ... 4294967295 Predefinito per
: 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)

Questo valore del flag dipende da innodb_buffer_pool_size e innodb_buffer_pool_instances. MySQL può ottimizzare automaticamente il valore di innodb_buffer_pool_chunk_size in base a questi due flag.

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

Consulta la sezione Suggerimenti per maggiori informazioni su questo flag.

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

Consulta la sezione Suggerimenti per maggiori informazioni su questo flag.

No
innodb_buffer_pool_load_at_startup boolean
on | off
innodb_buffer_pool_load_now boolean
on | off

Consulta la sezione Suggerimenti per maggiori informazioni su questo flag.

No
innodb_buffer_pool_size integer

L'impostazione di questo flag per MySQL 5.6 richiede il riavvio. Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
innodb_change_buffer_max_size integer
0 ... 50
No
innodb_change_buffering string

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

No
innodb_checksum_algorithm string

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

No
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

Supportata in MySQL 5.7 e 8.0.

Valore predefinito: on

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

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

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

Supportata in MySQL 5.7 e 8.0.

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
innodb_flush_log_at_trx_commit integer
1, 2
Predefinito: 1

Se promuovi una replica con questo flag abilitato, il flag viene rimosso automaticamente e per impostazione predefinita la replica promossa ha una durabilità completa. Per utilizzare questo flag con una replica promossa, puoi aggiornare il flag alla replica dopo la promozione.

Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

No
innodb_flush_neighbors enumeration
0 ... 2

Supportata in MySQL 5.6, 5.7 e 8.0.

Valori predefiniti:

  • MySQL 5.6: 0
  • MySQL 5.7: 2
  • MySQL 8.0: 2
  • No
    innodb_flush_sync boolean
    on | off
    No
    innodb_ft_aux_table string

    Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

    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

    Supportata solo in MySQL 5.6 e versioni successive.

    innodb_ft_min_token_size integer
    0 ... 16

    Supportata solo in MySQL 5.6 e versioni successive.

    innodb_ft_num_word_optimize integer
    1000 ... 10000
    No
    innodb_ft_result_cache_limit integer
    1000000 ... 4294967295
    No
    innodb_ft_server_stopword_table string

    Supportata solo in MySQL 5.6 e versioni successive.

    No
    innodb_ft_sort_pll_degree integer
    1 ... 32
    innodb_ft_total_cache_size integer
    32000000 ... 1600000000
    innodb_ft_user_stopword_table string No
    innodb_io_capacity integer
    100 ... 100000
    Predefinito: 5000

    Supportata in MySQL 5.6, 5.7 e 8.0.

    Per saperne di più sulla configurazione delle prestazioni del disco, consulta la tabella VM E2 in Configurare i dischi per soddisfare i requisiti di prestazioni.

    No
    innodb_io_capacity_max integer
    100 ... 100000
    Predefinito: 10000

    Supportata in MySQL 5.6, 5.7 e 8.0.

    Per saperne di più sulla configurazione delle prestazioni del disco, consulta la tabella VM E2 in Configurare i dischi per soddisfare i requisiti di prestazioni.

    No
    innodb_large_prefix boolean
    on | off

    Supportata solo in 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
    valore predefinito: on
    No
    innodb_log_compressed_pages boolean
    on | off
    valore predefinito: on
    No
    innodb_log_file_size integer
    MySQL 5.6: 1048576 ... 274877906944
    MySQL 5.7: 4194304 ... 274877906944
    innodb_log_spin_cpu_abs_lwm integer
    0 ... 4294967295
    valore predefinito: 80
    No
    innodb_log_spin_cpu_pct_hwm integer
    0 ... 100
    valore predefinito: 50
    No
    innodb_log_wait_for_flush_spin_hwm integer
    0 ... 4294967295
    valore predefinito: 400
    No
    innodb_log_write_ahead_size integer
    512 ... 65536
    valore predefinito: 8192
    No
    innodb_lru_scan_depth integer
    100 ... 9223372036854775807
    No
    innodb_max_dirty_pages_pct float
    0 ... 99.99
    valore predefinito: 90
    No
    innodb_max_dirty_pages_pct_lwm float
    0 ... 99.99
    valore predefinito: 10
    No
    innodb_max_purge_lag integer
    0 ... 4294967295
    valore predefinito: 0
    No
    innodb_max_undo_log_size integer
    10485760 ... 9223372036854775807
    valore predefinito: 1073741824
    No
    innodb_max_purge_lag_delay integer
    0 ... 10000000
    valore predefinito: 0
    No
    innodb_monitor_disable string No
    innodb_monitor_enable string No
    innodb_monitor_reset counter
    string, module, pattern e all
    No
    innodb_monitor_reset_all enumeration
    Valori validi: counter, module, pattern, all
    No
    innodb_old_blocks_pct integer
    5 ... 95
    No
    innodb_old_blocks_time integer
    0 ... 4294967295
    No
    innodb_online_alter_log_max_size integer
    65536 ... 9223372036854775807
    No
    innodb_open_files integer
    100 ... 2147483647
    predefinito:
    MySQL 5.7: 2000
    MySQL 8.0: 4000
    8.0.28: no
    8.0.27: sì
    innodb_optimize_fulltext_only boolean
    on | off
    No
    innodb_page_cleaners integer
    1 ... 64
    Supportata in MySQL 5.7 e 8.0. Valore predefinito: 4. Per la versione 5.7, il valore predefinito è 32.
    innodb_parallel_read_threads integer
    1 ... 256
    valore predefinito: 4
    No
    innodb_print_all_deadlocks boolean
    on | off
    valore predefinito: off
    No
    innodb_print_ddl_logs boolean
    on | off
    No
    innodb_purge_batch_size integer
    1 ... 5000
    valore predefinito: 300
    No
    innodb_purge_rseg_truncate_frequency integer
    1 ... 128
    valore predefinito: 128
    No
    innodb_purge_threads 1 ... 32

    Supportata in MySQL 5.6, 5.7, 8.0

    Il valore predefinito è 1.

    innodb_random_read_ahead boolean
    on | off
    No
    innodb_read_ahead_threshold integer
    0 ... 64
    No
    innodb_read_io_threads integer
    1 ... 64
    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
    valore predefinito: 12.5
    No
    innodb_sort_buffer_size integer
    65536 ... 67108864
    innodb_spin_wait_delay integer
    MySQL 5.7: 0 ... 1000000
    MySQL 8.0.13 e versioni successive: 0 ... 1000
    valore predefinito: 6
    No
    innodb_stats_auto_recalc boolean
    on | off
    No
    innodb_stats_include_delete_marked boolean
    on | off
    valore predefinito: 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

    Supportata in MySQL 5.6, 5.7, 8.0

    Il valore predefinito è 1.

    innodb_sync_spin_loops integer
    0 ... 4294967295
    valore predefinito: 30
    No
    innodb_table_locks boolean
    on | off
    valore predefinito: on
    No
    innodb_thread_concurrency integer
    0 ... 1000
    No
    innodb_thread_sleep_delay integer
    0 ... 1000000
    No
    innodb_undo_log_truncate boolean
    on | off
    valore predefinito: on
    No
    innodb_use_native_aio boolean
    on | off
    valore predefinito: on
    innodb_write_io_threads integer
    1 ... 64
    interactive_timeout integer
    1 ... 31536000
    No
    internal_tmp_disk_storage_engine enumeration
    INNODB | MYISAM
    Predefinito: INNODB
    Questo flag viene utilizzato solo per MySQL 5.7.
    No
    internal_tmp_mem_storage_engine enumeration
    MEMORY, TempTable
    Questo flag viene utilizzato solo per MySQL 8.0.
    No
    join_buffer_size integer
    128 ... 9223372036854775807
    No
    keep_files_on_create boolean
    on | off
    predefinita: off
    No
    key_buffer_size integer
    4096 ... 4294967295
    valore predefinito: 8388608
    No
    key_cache_age_threshold integer
    100 ... 9223372036854775807
    valore predefinito: 300
    No
    key_cache_block_size integer
    512 ... 16384
    valore predefinito: 1024
    No
    key_cache_division_limit integer
    1 ... 100
    valore predefinito: 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 | sk_SK | es_ES | sk_SK | es_ES | en_US | es_ES | sk_SK | en_US
    sv_SEuk_UA
    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
    valore predefinito:
    MySQL 5.7: 3
    MySQL 8.0: 2
    No
    log_queries_not_using_indexes boolean
    on | off
    No
    log_slow_admin_statements boolean
    on | off
    valore predefinito: off
    No
    log_slow_extra boolean
    on | off
    valore predefinito: off
    No
    log_slow_replica_statements boolean
    on | off Predefinito: off
    No
    log_slow_slave_statements boolean
    on | off Valore predefinito: off
    No
    log_throttle_queries_not_using_indexes integer
    0 ... 9223372036854775807
    No
    log_timestamps string
    "UTC | SYSTEM"
    valore predefinito: UTC
    No
    long_query_time float
    0 ... 30000000

    Cloud SQL offre la possibilità di impostare il flag su un valore inferiore a 1, se necessario.

    Se è abilitato anche il flag log_queries_not_using_indexes, potresti visualizzare query con un tempo inferiore a quello specificato qui.

    No
    low_case_table_names 5.7 | 8.0 integer
    0 o 1
    Predefinito: 0

    Se utilizzi il valore predefinito 0 per questo flag, i nomi delle tabelle e dei database sono sensibili alle maiuscole. Se impostato su 1, i nomi delle tabelle e dei database non fanno distinzione tra maiuscole e minuscole.

    Per le istanze MySQL 5.7, puoi modificare il valore di questo flag in qualsiasi momento. In questo caso, assicurati di comprendere in che modo la modifica influisce sulle tabelle e sui database esistenti.

    Per le istanze MySQL 8.0, puoi impostare il valore di questo flag su un valore desiderato solo durante la creazione di un'istanza. Dopo aver impostato questo valore, non puoi più modificarlo. Inoltre, per un'istanza esistente, non puoi modificare il valore di questo flag.

    Quando crei repliche di lettura per istanze MySQL 5.7 o MySQL 8.0, la replica eredita questo valore di flag dall'istanza principale.

    mandatory_roles string role name
    predefinito: empty string
    No
    master_verify_checksum boolean
    on | off Valore predefinito: off
    No
    max_allowed_packet integer
    16384 ... 1073741824

    Questo valore deve essere un multiplo di 1024, se sql_mode=TRADITIONAL o sql_mode=STRICT_ALL_TABLES.

    No
    max_binlog_cache_size integer
    4096 ... 4294967296
    valore predefinito: 4294967296
    No
    max_binlog_size integer
    4096 ... 1073741824
    No
    max_binlog_stmt_cache_size integer
    4096 ... 4294967296
    valore predefinito: 4294967296
    No
    max_connect_errors integer
    1 ... 9223372036854775807
    valore predefinito: 100
    No
    max_connections integer
    1 ... 100000
    No
    max_digest_length integer
    0 ... 1048576
    max_error_count integer
    0 ... 65535
    valore predefinito:
    MySQL 5.7 o precedente: 64
    MySQL 8.0 e versioni successive: 1024
    No
    max_execution_time integer
    0 ... 9223372036854775807
    No
    max_heap_table_size integer
    16384 ... 67108864

    Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

    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
    valore predefinito: 0
    No
    myisam_data_pointer_size Predefinito per integer
    2...7
    : 6
    No
    myisam_max_sort_file_size Predefinito per integer
    0...9223372036853727232
    : 9223372036853727232
    No
    myisam_mmap_size Predefinito per integer
    7...9223372036854775807
    : 9223372036854775807
    myisam_sort_buffer_size Predefinito per integer
    4096...4294967295
    : 8388608
    No
    myisam_stats_method string
    "nulls_unequal, nulls_equal, nulls_ignored"
    valore predefinito: nulls_unequal
    No
    myisam_use_mmap boolean
    on | off
    predefinita: off
    No
    mysql_native_password_proxy_users boolean
    on | off
    predefinita: off
    No
    net_buffer_length integer
    1024 ... 1048576
    predefinita: 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
    predefinita: 2
    optimizer_prune_level integer
    0 ... 1
    No
    optimizer_search_depth integer
    0 ... 62
    No
    optimizer_switch multi-value repeated string

    Per ulteriori informazioni sui flag per più valori, consulta la sezione Suggerimenti.

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

    Per ulteriori informazioni sui flag per più valori, consulta la sezione Suggerimenti.

    No
    optimizer_trace_features multi-value repeated string

    Per ulteriori informazioni sui flag per più valori, consulta la sezione Suggerimenti.

    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
    valore predefinito: 0
    No
    password_require_current boolean on | off
    valore predefinito: off
    No
    password_reuse_interval integer 0-4294967295
    valore predefinito: 0
    No
    performance_schema boolean
    on | off

    impostazione predefinita: off, per MySQL 5.6, 5.7 e per 8.0 se la RAM dell'istanza è inferiore a 15 GB.

    predefinita: on, per MySQL 8.0 se la RAM dell'istanza è superiore a 15 GB

    Per saperne di più sui flag performance_schema, consulta la sezione Suggerimenti.

    performance_schema_accounts_size integer
    -1 ... 1048576

    Per saperne di più sui flag performance_schema, consulta la sezione Suggerimenti.

    performance_schema_digests_size integer
    -1 ... 1048576

    Per saperne di più sui flag performance_schema, consulta la sezione Suggerimenti.

    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 sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_events_statements_history_long_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_events_statements_history_size integer
    -1 ... 1024

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_events_transactions_history_long_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_events_transactions_history_size integer
    -1 ... 1024

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_events_waits_history_long_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_events_waits_history_size integer
    -1 ... 1024

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_hosts_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_cond_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_cond_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_digest_length integer
    0 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_digest_sample_age integer
    0 ... 1048576
    valore predefinito: 60
    No
    performance_schema_max_file_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_file_handles integer
    0 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_file_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_index_stat integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_memory_classes integer
    0 ... 1024

    Per saperne di più sui flag performance_schema, consulta la sezione Suggerimenti.

    performance_schema_max_metadata_locks integer
    -1 ... 104857600

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_mutex_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_mutex_instances integer
    -1 ... 104857600

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_prepared_statements_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_program_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_rwlock_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_rwlock_instances integer
    -1 ... 104857600

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_socket_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_socket_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_sql_text_length integer
    0 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_stage_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_statement_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_statement_stack integer
    1 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_table_handles integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_table_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_table_lock_stat integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_thread_classes integer
    0 ... 256

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_max_thread_instances integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_session_connect_attrs_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_setup_actors_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_setup_objects_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

    performance_schema_users_size integer
    -1 ... 1048576

    Consulta la sezione Suggerimenti per ulteriori informazioni sui flag performance_schema.

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

    Questo flag non è disponibile per MySQL 8.0 poiché la cache delle query è deprecata a partire da MySQL 5.7.20 e viene rimossa da MySQL 8.0.

    No
    query_cache_min_res_unit integer
    0 ... 9223372036854775807

    Questo flag non è disponibile per MySQL 8.0 poiché la cache delle query è deprecata a partire da MySQL 5.7.20 e viene rimossa da MySQL 8.0.

    No
    query_cache_size integer
    0 ... 223338299392

    Questo flag non è disponibile per MySQL 8.0 poiché la cache delle query è deprecata a partire da MySQL 5.7.20 e viene rimossa da MySQL 8.0.

    No
    query_cache_type enumeration
    0 ... 2

    Questo flag non è disponibile per MySQL 8.0 poiché la cache delle query è deprecata a partire da MySQL 5.7.20 e viene rimossa da MySQL 8.0.

    query_cache_wlock_invalidate boolean
    on | off

    Questo flag non è disponibile per MySQL 8.0 poiché la cache delle query è deprecata a partire da MySQL 5.7.20 e viene rimossa da 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

    Non ha alcun effetto sulle repliche.

    No
    read_rnd_buffer_size integer
    1 ... 2147483647
    No
    regexp_stack_limit integer
    0 ... 2147483647
    No
    regexp_time_limit integer
    0 ... 2147483647
    predefinita: 32
    No
    replica_checkpoint_group integer
    32 ... 524280
    Il valore predefinito è 512.

    Questo flag non influisce sulle repliche in cui non è abilitato il multithreading.

    No
    replica_checkpoint_period integer
    1 ... 4294967295
    Il valore predefinito è 300.

    L'unità è in millisecondi.

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

    L'unità è in secondi.

    No
    replica_parallel_type enumeration
    DATABASE, LOGICAL_CLOCK
    Impostazione predefinita:
    MySQL 8.0.26 o versioni precedenti: DATABASE
    MySQL 8.0.27 o versioni successive: LOGICAL_CLOCK

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    replica_parallel_workers integer

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    replica_pending_jobs_size_max integer

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    replica_preserve_commit_order boolean

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    replica_skip_errors string
    Predefinito: OFF

    Per maggiori informazioni su questo flag, consulta la sezione Suggerimenti.

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

    Per ulteriori informazioni su come utilizzare questo flag, consulta la sezione Filtri di replica.

    No
    replicate_do_table string

    Per ulteriori informazioni su come utilizzare questo flag, consulta la sezione Filtri di replica.

    No
    replicate_ignore_db string

    Per ulteriori informazioni su come utilizzare questo flag, consulta la sezione Filtri di replica.

    No
    replicate_ignore_table string

    Per ulteriori informazioni su come utilizzare questo flag, consulta la sezione Filtri di replica.

    No
    replicate_wild_do_table string

    Per ulteriori informazioni su come utilizzare questo flag, consulta la sezione Filtri di replica.

    No
    replicate_wild_ignore_table string

    Per ulteriori informazioni su come utilizzare questo flag, consulta la sezione Filtri di replica.

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

    Supportata solo in MySQL 5.7.

    No
    skip_character_set_client_handshake boolean
    on | off
    predefinita: off
    skip_show_database flag
    on | off
    slave_checkpoint_group integer
    32 ... 524280
    Il valore predefinito è 512.

    Questo flag non influisce sulle repliche in cui non è abilitato il multithreading.

    No
    slave_checkpoint_period integer
    1 ... 4294967295
    Il valore predefinito è 300.

    L'unità è in millisecondi.

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

    L'unità è in secondi.

    No
    slave_parallel_type enumeration
    DATABASE, LOGICAL_CLOCK
    Impostazione predefinita:
    MySQL 8.0.26 o versioni precedenti: DATABASE
    MySQL 8.0.27 o versioni successive: LOGICAL_CLOCK

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    slave_parallel_workers integer

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    slave_preserve_commit_order boolean

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    slave_pending_jobs_size_max integer

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    slave_skip_errors string
    Predefinito: OFF

    Per maggiori informazioni su questo flag, consulta la sezione Suggerimenti.

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

    Consulta la sezione Suggerimenti per ulteriori informazioni sui log delle query lente.

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

    Consulta la sezione Modalità SQL del server nella documentazione di MySQL per i valori consentiti, incluse le modalità combinate, come ANSI. NO_DIR_IN_CREATE non è supportato.

    Cloud SQL per MySQL non supporta valori vuoti per il flag sql_mode. Anziché utilizzare un valore vuoto, imposta questo flag sulla modalità NO_ENGINE_SUBSTITUTION.

    No
    sql_require_primary_key boolean
    on | off
    Predefinito: off
    No
    sql_select_limit Valore predefinito integer 0...18446744073709551615
    : 18446744073709551615

    Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

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

    L'impostazione predefinita 1 consente la sincronizzazione del log binario su disco prima del commit delle transazioni.

    Se promuovi una replica con questo flag abilitato, il flag viene rimosso automaticamente e per impostazione predefinita la replica promossa ha una durabilità completa. Per utilizzare questo flag con una replica promossa, puoi aggiornare il flag alla replica dopo la promozione.

    Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

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

    Dalla versione 5.7 alla versione 8.0.27: TLSv1, TLSv1.1
    Dalla versione 8.0.28 o successiva: TLSv1.2
    Versione 5.7: Sì

    Versione 8.0 o successive: no
    tmp_table_size integer
    1024 ... 67108864

    Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

    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

    Per informazioni su come utilizzare questo flag e sui relativi valori accettati, consulta Configurare la replica parallela.

    No
    unique_checks boolean
    on | off
    predefinita: on

    Per ulteriori informazioni su questo flag, consulta la sezione Suggerimenti.

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

    Nomi dei fusi orari

    In questa sezione, scoprirai i nomi dei fusi orari supportati da Cloud SQL per MySQL.

    Nella tabella in questa sezione vengono visualizzati i seguenti dati:

    • Nome del fuso orario: il nome supportato da Cloud SQL per MySQL.
    • STD: la differenza di fuso orario in ora standard (STD).
    • DST: la differenza di fuso orario nell'ora legale.
    • Nomi sinonimi: i nomi dei fusi orari che potresti utilizzare, ma non sono supportati da Cloud SQL per MySQL. In questo caso, utilizza il nome del fuso orario corrispondente.
    nome del fuso orario Malattia sessualmente trasmissibile DST Nomi sinonimi
    Africa/Il Cairo +02:00 +02:00 Egitto
    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_Abeba
    Africa/Asmera
    Africa/Dar_es_Salaam
    Africa/Gibuti
    Africa/Kampala
    Africa/Mogadiscio
    India/Antananarivo
    India/Comoro
    India/Mayotte
    Africa/Tripoli +02:00 +02:00 Libia
    Africa/Windhoek +02:00 +02:00
    America/Araguaina −03:00 −03:00
    America/Asunción −04:00 −03:00
    America/Bogotà −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
    Stati Uniti/Montagne
    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/Atlantico
    America/Los_Angeles −08:00 −07:00
    America/Manaus −04:00 −04:00 Brasile/Ovest
    America/Matamoros −06:00 −05:00
    America/Città_del_Messico −06:00 −05:00
    America/Monterrey −06:00 −05:00
    America/Montevideo −03:00 −03:00
    America/New_York −05:00 −04:00
    America/Fenice −07:00 −07:00 Stati Uniti/Arizona
    MST
    America/Creston
    America/Santiago −04:00 −03:00 Cile/continente
    America/San_Paolo −03:00 −03:00
    America/Tijuana −08:00 −07:00 Messico/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/Calcutta
    Asia/Damasco +02:00 +03:00
    Asia/Dacca +06:00 +06:00 Asia/Dacca
    Asia/Irkutsk +08:00 +08:00
    Asia/Gerusalemme +02:00 +03:00 Asia/Tel_Aviv
    Israele
    Asia/Kabul +04:30 +04:30
    Asia/Karachi +05:00 +05:00
    Asia/Kathmandu +05:45 +05:45 Asia/Katmandu
    Asia/Calcutta +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/Riyad +03:00 +03:00 Asia/Kuwait
    Antartide/Syowa
    Asia/Aden
    Asia/Seul +09:00 +09:00 ROK
    Asia/Shanghai +08:00 +08:00 Asia/Chongqing
    Asia/Chungking
    Asia/Harbin
    RPC
    Asia/Singapore +08:00 +08:00 Singapore
    Asia/Taipei +08:00 +08:00 ROC
    Asia/Teheran +03:30 +04:30 Iran
    Asia/Tokyo +09:00 +09:00 Giappone
    Asia/Ulan Bator +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
    Atlantico/Azzorre -01:00 +00:00
    Australia/Adelaide +09:30 +10:30 Australia/Sud
    Australia/Brisbane +10:00 +10:00 Australia/Queensland
    Australia/Darwin +09:30 +09:30 Australia/Nord
    Australia/Hobart +10:00 +11:00 Australia/Currie
    Australia/Tasmania
    Australia/Perth +08:00 +08:00 Australia/Ovest
    Australia/Sydney +10:00 +11:00 Australia/NSW
    Australia/ACT
    Australia/Canberra
    Brasile/Est −03:00 −03:00 America/San_Paolo
    Canada/Terranova −03:30 -02:30 America/St_Johns
    Canada/Saskatchewan −06:00 −06:00 America/Regina
    Canada/Yukon −07:00 −07:00 America/Whitehorse
    Europa/Amsterdam +01:00 +02:00
    Europa/Atene +02:00 +03:00
    Europa/Dublino +01:00 +00:00 Eire
    Europa/Helsinki +02:00 +03:00 Europa/Mariehamn
    Europa/Istanbul +03:00 +03:00 Turchia
    Asia/Istanbul
    Europa/Kaliningrad +02:00 +02:00
    Europa/Madrid +01:00 +02:00
    Europa/Mosca +03:00 +03:00 W-SU
    Europa/Parigi +01:00 +02:00 INDICE
    CET
    Europa/Praga +01:00 +02:00 Europa/Bratislava
    Europa/Sarajevo +01:00 +02:00 Europa/Belgrado
    Europa/Ljubljana
    Europa/Podgorica
    Europa/Skopje
    Europa/Zagabria
    Pacifico/Auckland +12:00 +13:00 Nuova Zelanda
    Antartide/McMurdo
    Antartide/Pole_Sud
    Pacifico/Figi +12:00 +13:00
    Pacifico/Guam +10:00 +10:00 Pacifico/Saipan
    Pacifico/Honolulu −10:00 −10:00 Stati Uniti/Hawaii
    Pacifico/Johnston
    HST
    Pacifico/Samoa −11:00 −11:00 Pacifico/Pago_Pago
    USA/Samoa
    Stati Uniti/Alaska −09:00 −08:00 America/Anchorage
    America/giugno
    America/Metlakatla
    America/Nome
    America/Sitka
    America/Yakutat
    US/centrale −06:00 −05:00 America/Chicago
    Stati Uniti/Orientali −05:00 −04:00 America/New_York
    Stati Uniti/Est-Indiana −05:00 −04:00 America/Indiana/Indianapolis
    America/Indianapolis
    America/Fort_Wayne
    Stati Uniti/Montagne −07:00 −06:00 America/Denver
    Stati Uniti/Pacifico −08:00 −07:00 America/Los_Angeles
    UTC +00:00 +00:00 Etc/UTC
    Etc/UCT
    Etc/Universal
    Etc/Zulu

    Le tabelle di fuso orario in Cloud SQL potrebbero dover essere aggiornate con i dati più recenti. Ad esempio, un paese potrebbe passare da una differenza di fuso orario ISD a una differenza di fuso orario STD o un paese potrebbe introdurre un nuovo fuso orario.

    Per ogni release di un agente di servizio critico (CSA) per Cloud SQL, le tabelle dei fusi orari vengono aggiornate con i dati più recenti. In questo caso, durante il periodo di non manutenzione, le istanze di replica vengono aggiornate. Le istanze principali vengono quindi aggiornate durante il periodo di manutenzione.

    Puoi attendere fino al normale periodo di manutenzione per la release CSA oppure puoi eseguire la manutenzione self-service per aggiornare le tabelle dei fusi orari con i dati più recenti. Per saperne di più sulla visualizzazione delle versioni di manutenzione disponibili, vedi Stabilire la versione di manutenzione di destinazione.

    Suggerimenti per l'uso delle segnalazioni

    general_log, slow_query_log

    Per rendere disponibili i log general o slow query, abilita il flag corrispondente e imposta il flag log_output su FILE. In questo modo l'output di log sarà disponibile utilizzando il visualizzatore log nella console Google Cloud. Tieni presente che si applicano addebiti di Google Cloud Observability Logging. Per ridurre al minimo il costo di archiviazione dell'istanza, i log general e slow query sul disco dell'istanza vengono ruotati quando il file di log è più vecchio di 24 ore (e non sono state apportate modifiche entro questa durata) o ha dimensioni superiori a 100 MB. I file di log precedenti vengono eliminati automaticamente dopo la rotazione.

    Se log_output è impostato su NONE, non puoi accedere ai log. Se imposti log_output su TABLE, l'output di log viene inserito in una tabella nel database di sistema mysql. poiché potrebbe consumare una notevole quantità di spazio su disco. Se questa tabella diventa grande, può influire sul tempo di riavvio dell'istanza o causare la perdita della copertura SLA dell'istanza. Per questo motivo, l'opzione TABLE non è consigliata. Inoltre, il contenuto del log non è disponibile in Esplora log e non viene ruotato. Se necessario, puoi troncare le tabelle dei log utilizzando l'API. Per saperne di più, consulta la pagina di riferimento istanzas.truncateLog.

    scade_logs_days, binlog_expire_logs_seconds
    Se abiliti il recupero point-in-time, la scadenza del periodo di conservazione dei log binari è determinata dal minore periodo di conservazione dei log delle transazioni e dai valori di questi flag. Puoi usare questi flag per gestire la durata di archiviazione dei log binari nelle repliche. Per ulteriori informazioni, consulta la pagina sulla conservazione dei log delle transazioni.
    innodb_buffer_pool_size

    Il valore di innodb_buffer_pool_size è la dimensione in byte del pool di buffer. Non puoi abilitare questo flag su istanze che hanno meno di 3840 MiB di RAM.

    Questo flag non è configurabile per i tipi di macchina con core condivisi (f1_micro e g1_small). La modifica di questo flag su MySQL 5.6 richiede un riavvio.

    In Cloud SQL, i valori predefiniti, minimi consentiti e massimi consentiti del flag innodb_buffer_pool_size dipendono dalla memoria dell'istanza. Questi valori possono essere calcolati approssimativamente come una percentuale della RAM dell'istanza. Per impostazione predefinita, il valore di questo flag in genere è impostato vicino al valore massimo consentito. La percentuale massima di allocazione consentita aumenta con la dimensione dell'istanza. Il valore minimo consentito è in genere circa il 20% della RAM dell'istanza.

    Valori approssimativi per questo flag:

    Intervallo RAM istanza% min% predefinita% max
    0-4,0 GB di RAMCirca il 34%
    4,0 GB - 7,5 GBCirca il 20%Circa il 34%Circa il 34%
    7,5 GB - 12 GBCirca il 20%Circa il 52%Circa il 52%
    12-24 GBCirca il 20%Circa il 67%Circa il 67%
    Almeno 24 GBCirca il 20%~72%~72%

    I valori esatti possono variare. Per calcolare il valore attuale dell'istanza, puoi eseguire la query:

      show global variables like 'innodb_buffer_pool_size';
      

    Come riferimento, sono forniti i valori minimi consentiti, predefiniti e massimi consentiti per i tipi di macchina riportati di seguito.

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

    innodb_file_per_table

    Per tutte le versioni MySQL 5.6 e successive, il valore predefinito è ON.

    innodb_flush_log_at_trx_commit, sync_binlog
    Per una piena conformità ACID e per mantenere durabilità e coerenza in una configurazione di replica, i flag innodb_flush_log_at_trx_commit e sync_binlog devono essere impostati sul valore predefinito di 1. Se modifichi il valore predefinito, la durabilità potrebbe diminuire, il che potrebbe causare un'incoerenza tra l'istanza principale e le repliche. Di conseguenza, l'istanza perde la copertura SLA. Inoltre, potrebbe verificarsi uno dei seguenti problemi:
    • Perdita di dati in determinate situazioni, ad esempio un arresto anomalo o un failover di una VM per un'istanza ad alta disponibilità a livello di regione
    • Dati non sincronizzati nei log binari e nei file di dati InnoDB
    • Perdita o errore dei dati PITR
    • Incoerenza dei dati tra un'istanza principale e le sue repliche
    • Un'interruzione di replica

    L'impostazione del valore del flag innodb_flush_log_at_trx_commit o sync_binlog su valori non predefiniti per le istanze primarie, autonome e ad alta disponibilità riduce la durabilità.

    Se hai bisogno di prestazioni più elevate per le repliche di lettura, ti consigliamo di impostare il valore innodb_flush_log_at_trx_commit su 2. Cloud SQL non supporta l'impostazione del valore di questo flag su 0. Se imposti il valore del flag su 2, devi disabilitare il log binario sulla replica oppure impostare sync_binlog su un valore diverso da 1 per ottenere prestazioni migliori.

    Cloud SQL potrebbe modificare temporaneamente i valori dei flag innodb_flush_log_at_trx_commit e sync_binlog impostandoli su predefiniti quando esegui un backup. Ciò potrebbe causare una riduzione delle prestazioni durante l'esecuzione dei backup. Per evitare che ciò influisca sull'istanza, puoi modificare la finestra di backup quando l'utilizzo dell'istanza è ridotto. Per maggiori informazioni, consulta la sezione Creare e gestire backup on demand e automatici.

    innodb_flush_log_at_timeout

    innodb_flush_log_at_timeout consente di modificare la frequenza degli svuotamenti delle pagine per evitare di influire sulle prestazioni del commit del gruppo di log binari. L'impostazione predefinita è una volta al secondo.

    Cloud SQL ha esteso questo flag per supportare la specifica di un periodo di tempo in microsecondi.

    Esempi:

    • 0.001 per specificare 1 ms
    • 0.0001 per specificare 100 us
    • 12.5 per specificare 12,5 secondi
    • 12.005 per specificare 12 secondi e 5 ms
    • 0.005100 per specificare 5 ms e 100 us

    Per alcuni carichi di lavoro, l'utilizzo di una granularità di secondo intero per lo svuotamento delle pagine potrebbe non essere accettabile in termini di potenziale perdita di transazioni. Puoi invece scaricare le pagine utilizzando la granularità in microsecondi per mantenere le prestazioni senza compromettere in modo significativo la durabilità.

    I periodi di tempo in microsecondi per il flag innodb_flush_log_at_timeout sono applicabili solo quando il flag di durabilità innodb_flush_log_at_trx_commit è impostato su 2.

    Lo svuotamento delle pagine potrebbe verificarsi con una frequenza maggiore o minore rispetto al valore specificato per innodb_flush_log_at_timeout e il valore non è il limite superiore.

    dimensioni_tabella_max_heap, dimensioni_tabella_tmp

    L'esaurimento della memoria dell'istanza disponibile può verificarsi quando imposti tmp_table_size e max_heap_table_size su un valore troppo alto per il numero di query simultanee elaborate dall'istanza. L'esaurimento della memoria provoca un arresto dell'istanza e il riavvio.

    Per ulteriori informazioni sull'utilizzo di questi flag, vedi In che modo MySQL utilizza tabelle temporanee interne e Il motore di archiviazione MEMORY.

    performance_schema

    Non puoi abilitare questo flag su istanze con un core condiviso (meno di 3 GB di RAM). Se abiliti questo flag, non puoi modificare il tipo di macchina in una dimensione che non supporta il flag; devi prima disabilitare questo flag.

    event_scheduler
    Gli eventi MySQL, chiamati anche eventi pianificati, sono attività che puoi pianificare. Gli eventi pianificati sono un gruppo di una o più istruzioni SQL impostate per essere eseguite a uno o più intervalli specificati. Il valore predefinito per MySQL 5.7 è OFF e il valore predefinito per MySQL 8.0 è ON. Per scoprire di più sul flag event_scheduler, consulta event_scheduler. Se il flag event_scheduler è impostato su ON per una replica di lettura, può causare errori in base al tipo di istruzioni definito negli eventi:
    • Se l'evento pianificato è un evento write in una replica di lettura, causa un errore, poiché le repliche di lettura sono di sola lettura. Per ulteriori informazioni, consulta Repliche di lettura.
    • Se l'evento pianificato contiene un'operazione di interruzione, come kill, event_scheduler la applica alla replica. Questa operazione interrompe la replica ed elimina la replica.
    Per evitare questi errori, imposta il flag event_scheduler su OFF durante la creazione delle repliche.

    Per maggiori informazioni su come abilitare o disabilitare event_scheduler, consulta Configurare i flag di database.

    replica_skip_errors,slave_skip_errors
    L'impostazione del flag replica_skip_errors o slave_skip_errors può causare problemi di replica. In generale, se si verifica un errore durante l'esecuzione di un'istruzione, la replica viene arrestata. Se utilizzi questo flag, l'errore verrà ignorato e la replica continuerà, creando un'incoerenza tra l'istanza principale e la replica. In questo modo, può anche essere più difficile risolvere i problemi di replica.

    Cloud SQL consiglia di utilizzare questo flag solo se necessario. Se si verificano errori di replica, consulta Risoluzione dei problemi di Cloud SQL: replica per ulteriori informazioni su come risolvere questo 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_limits
    sql_select_limit
    Questi flag non possono essere selezionati direttamente nella console Google Cloud o utilizzando gcloud CLI. Per utilizzare questi flag, usa il comando seguente:

    SET GLOBAL FLAG_NAME=FLAG_VALUE
    

    L'utilizzo del comando SET GLOBAL richiede il privilegio CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN, concesso al ruolo cloudsqlsuperuser.

    Per ulteriori informazioni su come concedere l'accesso con privilegi speciali a un utente specifico, consulta Informazioni sugli utenti MySQL. Questi flag non sono permanenti. Quando l'istanza Cloud SQL viene ricreata o riavviata, le impostazioni del flag vengono reimpostate al valore predefinito.

    binlog_order_commits

    Il valore predefinito del flag binlog_order_commits è ON. Cloud SQL consiglia di non modificare il valore predefinito di questo flag. Se il valore predefinito viene modificato in OFF, il commit delle transazioni nello stesso gruppo di log binari verrà eseguito in un ordine diverso rispetto a quando erano scritte nel log binario. Questo influisce sulle seguenti operazioni che eseguono transazioni nell'ordine dei log binari:

    • Replica: può causare incoerenze nei dati tra l'origine e le repliche
    • Point-in-time-recovery: potrebbe causare un'incoerenza dei dati tra lo stato ripristinato del PITR e lo stato storico.

    optimizer_switch,optimizer_trace,optimizer_trace_features

    I flag dell'ottimizzatore hanno valori separati da virgole. Puoi impostare questi flag usando la console o gcloud. Per ulteriori informazioni su come impostare questo flag mediante la console, consulta Configurare i flag di database. Se utilizzi gcloud, puoi specificare il valore di questi flag in due modi diversi:

    Per impostare più flag secondari dell'ottimizzatore in un unico comando, utilizza il delimitatore di virgola per separare il nome di ciascun flag. Se imposti un singolo valore per un singolo flag secondario utilizzando il comando gcloud, questo sovrascriverà tutti i flag secondari impostati in precedenza. Ad esempio, se esegui questo comando, il valore previsto per il flag secondario batched_key_access è impostato su on e tutti gli altri flag secondari per Optimized_flags vengono impostati sui valori predefiniti.
    gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=batched_key_access=on
    
    Se esegui questo comando, il valore del flag secondario block_nested_loop è impostato su on e tutti gli altri flag secondari di ottimizza_switch vengono sovrascritti e impostati sui valori predefiniti.
    gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=block_nested_loop=on
    
    È incluso batched_key_access, che era stato impostato su on dal comando precedente. Per mantenere tutti i flag secondari impostati in precedenza e aggiungerne di nuovi, devi aggiungere i valori di tutti i flag secondari che vuoi impostare quando aggiungi un nuovo flag secondario.

    Flag di sistema modificati in Cloud SQL

    Tutti gli altri flag del sistema di database non elencati nella sezione dei flag supportati sono denominati flag gestiti. Per alcuni flag gestiti, Cloud SQL imposta il flag su un valore diverso dall'impostazione predefinita per garantire l'affidabilità dell'esecuzione delle istanze Cloud SQL. Non puoi modificare i valori di questi flag di sistema.

    I flag gestiti con un'impostazione non predefinita sono elencati di seguito.

    Nome variabile Impostazione in Cloud SQL. Note
    binlog_format Resto del mondo Differisce solo in MySQL 5.6
    binlog_error_action ABORT_SERVER Differisce solo in MySQL 5.6
    innodb_doublewrite_pages 64 Si applica a MySQL 8.0.26 e versioni successive
    innodb_file_format Barracuda Differisce solo in MySQL 5.6
    innodb_flush_method O_DIRECT
    memlock true
    skip_name_resolve ON
    relay_log_info_repository TABELLA
    relay_log_recovery ON
    master_info_repository TABELLA
    rpl_semi_sync_master_enabled 1
    rpl_semi_sync_master_timeout 3000
    admin_address 127.0.0.1 Differisce solo in MySQL 8.0
    create_admin_listener_thread ON
    timeout-port-open 120 Differisce solo in MySQL 8.0
    partial_revokes ON Solo MySQL 8.0. Per maggiori informazioni su questo flag, consulta La revoca parziale dei flag di sistema in MySQL 8.0.

    flag di sistema parziale_revokes in MySQL 8.0

    Il flag partial_revokes ti consente di limitare l'accesso degli utenti a uno schema di database. Nella versione 8.0 di Cloud SQL per MySQL, il flag partial_revokes è impostato su ON. Questo limita l'uso dei caratteri jolly quando si concede o si revocano i privilegi utente agli schemi di database in MySQL 8.0. Aggiorna l'istruzione GRANT per utilizzare il nome completo dello schema del database anziché utilizzare caratteri jolly.

    Ad esempio, se utilizzi il seguente comando con il carattere jolly %\ per concedere privilegi a un utente in MySQL 5.7, all'utente verranno concessi privilegi per tutti i database che terminano con _foobar.

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

    Tuttavia, in MySQL 8.0, agli utenti verrà concesso l'accesso solo al database che corrisponde esattamente a %\_foobar.

    Esistono due modi diversi per concedere l'accesso a più database in MySQL 8.0.

    1. Puoi concedere le autorizzazioni a database specifici utilizzando i nomi completi del database, come mostrato nel comando seguente:

        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, puoi utilizzare i comandi grant e revoke per concedere privilegi utente su tutti gli schemi dei database, limitando l'accesso ad alcuni schemi dei database.

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

      Questo ruolo concede l'accesso a tutti gli schemi del database, limitando l'accesso a test3_foobar.*.

    Filtri di replica

    I filtri di replica possono essere impostati solo sulle repliche di Cloud SQL. Ogni filtro di replica è impostato come singolo flag per più database, dove ogni nome del database è separato da una virgola. Puoi configurare un filtro di replica su una replica Cloud SQL utilizzando la console o il seguente comando:

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

    I filtri di replica non supportano nomi di database che contengono valori di virgole. Il valore ^~^ nel comando precedente è necessario per i flag di database che sono valori separati da virgole.

    Quando imposti un flag di filtro di replica, tieni presente quanto segue:

    • Se la replica non è integro, i dati filtrati dai filtri di replica possono essere visualizzati nella replica poiché Cloud SQL utilizza i dati di origine dell'istanza principale per ricreare la replica dell'istanza.
    • Non puoi impostare filtri di replica sullo schema mysql.
    • Le regole del filtro di replica non si applicano alle esportazioni serverless.

    Flag dei suggerimenti sull'indicizzazione

    Di seguito è riportato un elenco di flag di database utilizzati da Cloud SQL per MySQL per abilitare e gestire le funzionalità specifiche del consulente sull'indicizzazione.

    Nome della segnalazione Tipo
    Valori e note accettati
    Riavviare
    è necessario?
    cloudsql_index_advisor boolean
    on | off
    predefinita: off
    cloudsql_index_advisor_auto_advisor_schedule string Predefinito per
    : 00:00
    No
    cloudsql_index_advisor_run_at_timestamp Datetime Predefinito per
    : 00:00:00
    No

    Flag con alias

    L'elenco seguente contiene i nomi dei flag che sono stati modificati da Cloud SQL per MySQL versione 8.0.26 e successive.

    Nome flag obsoleto Nuovo nome flag
    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

    Se l'istanza Cloud SQL utilizza un nome di flag deprecato, modifica l'istanza Cloud SQL, elimina il nome del flag deprecato e aggiungi il nuovo flag all'istanza. Per maggiori informazioni, consulta Configurare un flag di database.

    Risoluzione dei problemi

    Problema Risoluzione dei problemi
    Dopo aver abilitato un flag, l'istanza passa tra panico e arresto anomalo. Contatta l' assistenza clienti per richiedere la rimozione di una segnalazione seguita da un hard drain. Ciò forza il riavvio dell'istanza su un host diverso con una nuova configurazione senza il flag o l'impostazione indesiderati.
    Viene visualizzato il messaggio di errore Bad syntax for dict arg quando cerchi di impostare un flag. I valori dei parametri complessi, ad esempio elenchi separati da virgole, richiedono un trattamento speciale se utilizzati con i comandi gcloud.

    Passaggi successivi