Datenbank-Flags konfigurieren

Auf dieser Seite wird gezeigt, wie Sie Datenbank-Flags für Cloud SQL konfigurieren und welche Flags Sie für Ihre Instanz festlegen können. Sie können Datenbank-Flags für viele Vorgänge verwenden, z. B. für das Anpassen von MySQL-Parametern und Optionen sowie für das Konfigurieren und Optimieren einer Instanz.

In einigen Fällen muss vor dem Setzen eines Flags ein anderes Flag gesetzt werden, damit die Funktionalität in vollem Umfang genutzt werden kann. Beispiel: Zum Aktivieren des langsamen Abfrage-Loggings müssen Sie sowohl das Flag slow_query_log auf on als auch das Flag log_output auf FILE setzen. Nur so sind die Logs in der Loganzeige der Google Cloud Console verfügbar.

Wenn Sie ein Flag für eine Datenbankinstanz festlegen, entfernen oder ändern, wird die Datenbank möglicherweise neu gestartet. Der Wert des Flags wird dann für die Instanz beibehalten, bis Sie es entfernen. Wenn die Instanz die Quelle für ein Replikat ist und neu gestartet wird, wird das Replikat ebenfalls neu gestartet, um es an die aktuelle Konfiguration der Instanz anzupassen.

Datenbank-Flags konfigurieren

Wert für Datenbank-Flag festlegen

Console

  1. Erstellen Sie in der Google Cloud Console ein neues Cloud Console-Projekt oder rufen Sie ein vorhandenes Projekt durch Auswahl des Projektnamens auf.
  2. Öffnen Sie die Instanz und klicken Sie auf Bearbeiten.
  3. Scrollen Sie nach unten zum Abschnitt Flags.
  4. Zum Setzen eines neuen Flags, das noch nicht in der Instanz gesetzt wurde, klicken Sie auf Zeile hinzufügen, wählen Sie das Flag aus dem Drop-down-Menü aus und legen Sie dessen Wert fest.
  5. Klicken Sie auf Speichern, um die Änderungen zu speichern.
  6. Bestätigen Sie die Änderungen auf der Übersichtsseite unter Flags.

gcloud

Bearbeiten Sie die Instanz:

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

Mit diesem Befehl werden alle zuvor festgelegten Datenbank-Flags überschrieben. Wenn Sie diese Flags beibehalten und neue Flags hinzufügen möchten, geben Sie die Werte für alle Flags an, die Sie für die Instanz festlegen möchten. Für alle Flags, die nicht ausdrücklich angegeben werden, gilt der Standardwert. Für Flags, die keinen Wert haben, geben Sie den Flag-Namen gefolgt von einem Gleichheitszeichen („=“) ein.

Die Flags general_log, skip_show_database und wait_timeout können Sie beispielsweise mit folgendem Befehl festlegen:

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

REST Version 1

Mit der Anfrage unten legen Sie ein Flag für eine vorhandene Datenbank fest.

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

JSON-Text anfordern:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

So legen Sie beispielsweise das Flag general_log für eine vorhandene Datenbank fest:

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

JSON-Text anfordern:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Wenn bereits konfigurierte Flags für die Datenbank vorhanden sind, ändern Sie den obigen Befehl und fügen diese ein. Der Befehl PATCH überschreibt vorhandene Flags mit den Flags, die in der Anfrage festgelegt sind.

REST v1beta4

Mit der Anfrage unten legen Sie ein Flag für eine vorhandene Datenbank fest.

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

JSON-Text anfordern:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

So legen Sie beispielsweise das Flag general_log für eine vorhandene Datenbank fest:

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

JSON-Text anfordern:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Wenn bereits konfigurierte Flags für die Datenbank vorhanden sind, ändern Sie den obigen Befehl und fügen diese ein. Der Befehl PATCH überschreibt vorhandene Flags mit den Flags, die in der Anfrage festgelegt sind.

Alle Flags auf Standardwert zurücksetzen

Console

  1. Erstellen Sie in der Google Cloud Console ein neues Cloud Console-Projekt oder rufen Sie ein vorhandenes Projekt durch Auswahl des Projektnamens auf.
  2. Öffnen Sie die Instanz und klicken Sie auf Bearbeiten.
  3. Öffnen Sie den Bereich Datenbank-Flags.
  4. Klicken Sie neben allen angezeigten Flags auf X.
  5. Klicken Sie auf Speichern, um die Änderungen zu speichern.

gcloud

Setzen Sie alle Flags in einer Instanz auf ihren Standardwert zurück:

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

Sie werden aufgefordert, den Neustart der Instanz zu bestätigen.

REST Version 1

So löschen Sie alle Flags in einer vorhandenen Instanz:

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

JSON-Text anfordern:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

REST v1beta4

So löschen Sie alle Flags in einer vorhandenen Instanz:

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

JSON-Text anfordern:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Aktuelle Werte von Datenbank-Flags abrufen

Zum Abrufen aller aktuellen Werte der MySQL-Systemvariablen melden Sie sich mit dem mysql-Client bei Ihrer Instanz an und geben die folgende Anweisung ein:

 SHOW VARIABLES;

Sie können den Wert nur für unterstützte Flags ändern (wie unten aufgeführt).

Für eine Instanz festgelegte Datenbank-Flags ermitteln

So rufen Sie alle für eine Cloud SQL-Instanz festgelegten Flags auf:

Console

  1. Erstellen Sie in der Google Cloud Console ein neues Cloud Console-Projekt oder rufen Sie ein vorhandenes Projekt durch Auswahl des Projektnamens auf.
  2. Wählen Sie die Instanz aus, um die Seite Instanzübersicht zu öffnen.

    Die gesetzten Flags werden im Bereich Datenbank-Flags aufgelistet.

gcloud

Rufen Sie den Status der Instanz ab:

gcloud sql instances describe INSTANCE_NAME

In der Ausgabe werden Datenbank-Flags unter settings als databaseFlags-Sammlung aufgelistet. Weitere Informationen zur Darstellung der Flags in der Ausgabe finden Sie unter Darstellung von Instanzressourcen.

REST Version 1

Mit der Anfrage unten werden die Flags aufgelistet, die für eine Instanz konfiguriert sind.

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Suchen Sie in der Ausgabe nach dem Feld databaseFlags.

REST v1beta4

Mit der Anfrage unten werden die Flags aufgelistet, die für eine Instanz konfiguriert sind.

Ersetzen Sie dabei folgende Werte für die Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

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

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Suchen Sie in der Ausgabe nach dem Feld databaseFlags.

Von Cloud SQL verwaltete Flags

Cloud SQL passt bestimmte System-Flags abhängig vom Maschinentyp der Instanz an. Sie können diese Werte nicht ändern.

innodb_buffer_pool_instances
  • 1 für db-f1-micro und db-g1-small.
  • 1 wenn RAM < 7,5 GB ist
  • 2 wenn 7,5 GB <= RAM < 13 GB.
  • 4 wenn 13 GB <= RAM < 26 GB.
  • 8 wenn RAM >= 26 GB

Unterstützte Flags

Cloud SQL unterstützt die Flags, die in MySQL am häufigsten verwendet werden. Flags, die unten nicht erwähnt werden, werden nicht unterstützt.

Für bestimmte Flags unterstützt Cloud SQL eventuell einen anderen Wertebereich als der entsprechende MySQL-Parameter oder die entsprechende MySQL-Option.

Die Flags gelten für alle Versionen von MySQL, die von Cloud SQL unterstützt werden, sofern nichts anderes angemerkt ist.

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

Cloud SQL-Flag Typ
Gültige Werte und Hinweise
Neustart
erforderlich?
activate_all_roles_on_login boolean
on | off
Standard: off
Nein
auto_increment_increment integer
1 ... 65535
Nein
auto_increment_offset integer
1 ... 65535
Nein
binlog_cache_size integer
4096 ... 9223372036854775807
Nein
binlog_expire_log_seconds integer
0 oder 86400 (1 day) ... 4294967295 (max value)
Der Standardwert ist 2592000, also 30 Tage.

Im Bereich Tipps finden Sie weitere Informationen zu diesem Flag.

Nein
binlog_group_commit_sync_delay 0 ... 1000000

Wird in MySQL 5.7, 8.0 unterstützt

Der Standardwert ist 0.

Nein
binlog_group_commit_sync_no_delay_count 0 ... 1000000

Wird in MySQL 5.7, 8.0 unterstützt

Der Standardwert ist 0.

Nein
binlog_row_image enumeration
full (Standard), minimal oder noblob
Nein
binlog_stmt_cache_size 4096 ... 9223372036854775807 Nein
binlog_transaction_dependency_history_size integer

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
binlog_transaction_dependency_tracking enumeration

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
character_set_server string
utf8 oder utf8mb4 (empfohlen)
Ja
default_password_lifetime integer 0...65535
Standard: 0
Nein
default_time_zone string
Geben Sie Werte als Zeitzonenversätze von -12:59 bis +13:00 an. Führende Nullen sind erforderlich.

Beispiel: London liegt in der Zeitzone UTC, was in den unterstützten Werten für dieses Flag +00:00 bedeutet. Benannte Bereiche wie "Europa/London" werden von Cloud SQL nicht unterstützt.

Ja
disconnect_on_expired_password boolean on | off
Standard: on
Ja
eq_range_index_dive_limit integer
0 ... 2147483647
Nein
event_scheduler boolean
on | off

Konfigurieren Sie bei Verwendung des Event Schedulers die Instanz mithilfe einer Aktivierungsrichtlinie mit der Einstellung ALWAYS, damit geplante Ereignisse ausgeführt werden.

Nein
expire_log_days integer
0 ... 99
Der Standardwert ist 0, d. h. keine automatische Entfernung erfolgt.

Im Bereich Tipps finden Sie weitere Informationen zu diesem Flag.

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

Im Abschnitt Tipps finden Sie weitere Informationen zu allgemeinen Logs.

Nein
generated_random_password_length integer 5-255
Standard: 20
Nein
group_concat_max_len integer
4 ... 17179869184
Nein
init_connect string Nein
innodb_adaptive_hash_index boolean
on | off
Nein
innodb_adaptive_hash_index_parts integer
1 ... 512
Ja
innodb_adaptive_max_sleep_delay integer
0 ... 1000000
Nein
innodb_autoinc_lock_mode integer
0 ... 2
Ja
innodb_buffer_pool_size integer

Für das Festlegen dieses Flags für MySQL 5.6 muss das System neu gestartet werden. Im Abschnitt Tipps finden Sie weitere Informationen zu diesem Flag.

Nein
innodb_change_buffer_max_size integer
0 ... 50
Nein
innodb_concurrency_tickets integer
1 ... 4294967295
Nein
innodb_file_per_table boolean
on | off

Im Abschnitt Tipps finden Sie weitere Informationen zu diesem Flag.

Nein
innodb_fill_factor integer
10 ... 100
Nein
innodb_flush_log_at_trx_commit integer
1, 2
Standardwert: 1.

Im Abschnitt Tipps finden Sie weitere Informationen zu diesem Flag.

Nein
innodb_ft_cache_size integer
1600000 ... 80000000
Ja
innodb_ft_enable_diag_print boolean
on | off
Nein
innodb_ft_enable_stopword boolean
on | off
Nein
innodb_ft_max_token_size integer
10 ... 252

Nur in MySQL 5.6 und höheren Versionen unterstützt.

Ja
innodb_ft_min_token_size integer
0 ... 16

Nur in MySQL 5.6 und höheren Versionen unterstützt.

Ja
innodb_ft_num_word_optimize integer
1000 ... 10000
Nein
innodb_ft_result_cache_limit integer
1000000 ... 4294967295
Nein
innodb_ft_server_stopword_table string

Nur in MySQL 5.6 und höheren Versionen unterstützt.

Nein
innodb_ft_sort_pll_degree integer
1 ... 32
Ja
innodb_ft_total_cache_size integer
32000000 ... 1600000000
Ja
innodb_ft_user_stopword_table string Nein
innodb_large_prefix boolean
on | off

Wird nur in MySQL 5.6 unterstützt.

Nein
innodb_lock_wait_timeout integer
1 ... 1073741824
Nein
innodb_log_buffer_size integer
262144 ... 4294967295
Ja
innodb_log_file_size integer
MySQL 5.6: 1048576 ... 274877906944
MySQL 5.7: 4194304 ... 274877906944
Ja
innodb_lru_scan_depth integer
100 ... 9223372036854775807
Nein
innodb_old_blocks_pct integer
5 ... 95
Nein
innodb_old_blocks_time integer
0 ... 4294967295
Nein
innodb_online_alter_log_max_size integer
65536 ... 9223372036854775807
Nein
innodb_optimize_fulltext_only boolean
on | off
Nein
innodb_print_all_deadlocks boolean
on | off
Nein
innodb_purge_threads 1 ... 32

Wird in MySQL 5.6, 5.7, 8.0 unterstützt

Der Standardwert ist 1.

Ja
innodb_random_read_ahead boolean
on | off
Nein
innodb_read_ahead_threshold integer
0 ... 64
Nein
innodb_read_io_threads integer
1 ... 64
Ja
innodb_replication_delay integer
0 ... 4294967295
Nein
innodb_rollback_on_timeout boolean
on | off
Ja
innodb_rollback_segments integer
1 ... 128
Nein
innodb_sort_buffer_size integer
65536 ... 67108864
Ja
innodb_stats_auto_recalc boolean
on | off
Nein
innodb_stats_method enumeration
nulls_equal | nulls_unequal | nulls_ignored
Nein
innodb_stats_on_metadata boolean
on | off
Nein
innodb_stats_persistent boolean
on | off
Nein
innodb_stats_persistent_sample_pages integer
1 ... 9223372036854775807
Nein
innodb_stats_sample_pages integer
1 ... 9223372036854775807
Nein
innodb_stats_transient_sample_pages integer
1 ... 9223372036854775807
Nein
innodb_status_output boolean
on | off
Nein
innodb_status_output_locks boolean
on | off
Nein
innodb_strict_mode boolean
on | off
Nein
innodb_sync_array_size 1 ... 1024

Wird in MySQL 5.6, 5.7, 8.0 unterstützt

Der Standardwert ist 1.

Ja
innodb_thread_concurrency integer
0 ... 1000
Nein
innodb_thread_sleep_delay integer
0 ... 1000000
Nein
innodb_write_io_threads integer
1 ... 64
Ja
interactive_timeout integer
1 ... 31536000
Nein
internal_tmp_mem_storage_engine enumeration
MEMORY, TempTable
Dieses Flag wird nur für MySQL 8.0 verwendet.
Nein
join_buffer_size integer
128 ... 9223372036854775807
Nein
local_infile boolean
on | off
Nein
lock_wait_timeout integer
1 ... 31536000
Nein
log_bin_trust_function_creators boolean
on | off
Nein
log_output set
FILE | TABLE | NONE
Nein
log_queries_not_using_indexes boolean
on | off
Nein
log_throttle_queries_not_using_indexes integer
0 ... 9223372036854775807
Nein
long_query_time float
0 ... 30000000

In Cloud SQL können Sie dieses Flag auf einen niedrigeren Wert als 1 setzen, wenn nötig.

Wenn das Flag log_queries_not_using_indexes ebenfalls aktiviert ist, sehen Sie möglicherweise Abfragen, die kürzer als die hier angegebene Zeit sind.

Nein
lower_case_table_names integer
0 oder 1

In den meisten Fällen sollte der Standardwert 0 verwendet werden. Dadurch ist bei Tabellen- und Datenbanknamen die Groß-/Kleinschreibung zu beachten. Wenn Sie den Wert dieses Flags ändern müssen, sollten Sie sich darüber im Klaren sein, wie sich die Änderung auf Ihre vorhandenen Tabellen und Datenbanken auswirkt.

Ja
mandatory_roles string role name
Standard: empty string
Nein
max_allowed_packet integer
16384 ... 1073741824

Dieser Wert muss ein Vielfaches von 1.024 sein, wenn sql_mode=TRADITIONAL oder sql_mode=STRICT_ALL_TABLES ist.

Nein
max_binlog_size integer
4096 ... 1073741824
Nein
max_connections integer
14 ... 262143
Ja
max_digest_length integer
0 ... 1048576
Ja
max_execution_time integer
0 ... 9223372036854775807
Nein
max_heap_table_size integer
16384 ... 67108864

Im Abschnitt Tipps finden Sie weitere Informationen zu diesem Flag.

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

Im Bereich „Tipps“ finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_accounts_size integer
-1 ... 1048576

Im Bereich „Tipps“ finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_digests_size integer
-1 ... 1048576

Im Bereich „Tipps“ finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_stages_history_long_size integer
-1 ... 1048576
Ja
performance_schema_events_stages_history_size integer
-1 ... 1024

Im Bereich „Tipps“ finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_statements_history_long_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_statements_history_size integer
-1 ... 1024

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_transactions_history_long_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_transactions_history_size integer
-1 ... 1024

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_waits_history_long_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_events_waits_history_size integer
-1 ... 1024

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_hosts_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_cond_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_cond_instances integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_digest_length integer
0 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_file_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_file_handles integer
0 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_file_instances integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_index_stat integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_memory_classes integer
0 ... 1024

Im Bereich „Tipps“ finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_metadata_locks integer
-1 ... 104857600

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_mutex_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_mutex_instances integer
-1 ... 104857600

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_präparierte_Statements_instanzen integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_program_instances integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_rwlock_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_rwlock_instances integer
-1 ... 104857600

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_socket_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_socket_instances integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_sql_text_length integer
0 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_stage_klassen integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_statement_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_statement_stack integer
1 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_table_handles integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_table_instances integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_table_lock_stat integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_thread_classes integer
0 ... 256

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_max_thread_instances integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_session_connect_attrs_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_setup_actors_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_setup_objects_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
performance_schema_users_size integer
-1 ... 1048576

Im Bereich Tipps finden Sie weitere Informationen zu performance_schema-Flags.

Ja
query_alloc_block_size integer
1024 ... 4294967295
Nein
query_cache_limit integer
0 ... 223338299392

Dieses Flag ist für MySQL 8.0 nicht verfügbar, da der Abfrage-Cache ab MySQL 5.7.20 veraltet ist und in MySQL 8.0 entfernt wurde.

Nein
query_cache_min_res_unit integer
0 ... 9223372036854775807

Dieses Flag ist für MySQL 8.0 nicht verfügbar, da der Abfrage-Cache ab MySQL 5.7.20 veraltet ist und in MySQL 8.0 entfernt wurde.

Nein
query_cache_size integer
0 ... 223338299392

Dieses Flag ist für MySQL 8.0 nicht verfügbar, da der Abfrage-Cache ab MySQL 5.7.20 veraltet ist und in MySQL 8.0 entfernt wurde. Im Abschnitt Tipps finden Sie weitere Informationen zu diesem Flag.

Nein
query_cache_type enumeration
0 ... 2

Dieses Flag ist für MySQL 8.0 nicht verfügbar, da der Abfrage-Cache ab MySQL 5.7.20 veraltet ist und in MySQL 8.0 entfernt wurde. Im Abschnitt Tipps finden Sie weitere Informationen zu diesem Flag.

Ja
query_cache_wlock_invalidate boolean
on | off

Dieses Flag ist für MySQL 8.0 nicht verfügbar, da der Abfrage-Cache ab MySQL 5.7.20 veraltet ist und in MySQL 8.0 entfernt wurde.

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

Hat keine Auswirkungen auf Replikate.

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

Wird nur in MySQL 5.7 unterstützt.

Nein
skip_show_database flag
on | off
Ja
slave_parallel_type enumeration

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
slave_parallel_workers integer

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
slave_preserve_commit_order boolean

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
slave_pending_jobs_size_max integer

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
slow_query_log boolean
on | off

Im Abschnitt Tipps finden Sie weitere Informationen zu langsamen Abfragelogs.

Nein
sort_buffer_size integer
32768 ... 9223372036854775807
Nein
sql_mode string

Die zulässigen Werte und kombinierten Modi wie ANSI finden Sie in der MySQL-Dokumentation unter Server SQL-Modi. NO_DIR_IN_CREATE wird nicht unterstützt.

Cloud SQL for MySQL unterstützt keine leeren Werte für das Flag sql_mode. Anstatt einen leeren Wert zu verwenden, legen Sie dieses Flag auf den Modus NO_ENGINE_SUBSTITUTION fest.

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

Wird nur auf Lesereplikaten und externen Serverreplikaten in MySQL 5.7 und 8.0 unterstützt.

Die Standardeinstellung 1 ermöglicht die Synchronisierung des binären Logs mit dem Laufwerk, bevor Transaktionen ausgeführt werden.

Dieses Flag wird auf primären Instanzen oder Legacy-HA-Failover-Replikaten nicht unterstützt. Wenn ein Replikat mit diesem Flag hochgestuft wird, wird das Flag entfernt.

Nein
table_definition_cache integer
400 ... 524288
Nein
table_open_cache integer
1 ... 524288
Nein
table_open_cache_instances integer
1 ... 64
Ja
thread_cache_size integer
0 ... 16384
Nein
thread_stack integer
131072 ... 9223372036854775807
Ja
tmp_table_size integer
1024 ... 67108864

Im Bereich Tipps finden Sie weitere Informationen zu diesem Flag.

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

Informationen zur Verwendung dieses Flags und über die dafür zulässigen Werte finden Sie unter Parallele Replikation konfigurieren.

Nein
updatable_views_with_limit integer
0 ... 1
Nein
wait_timeout integer
1 ... 31536000
Nein

Tipps für die Arbeit mit Flags

general_log, slow_query_log

Wenn Sie die general- oder slow query-Logs anzeigen lassen möchten, aktivieren Sie das entsprechende Flag und setzen das Flag log_output auf FILE. Dadurch wird die Logausgabe über die Loganzeige in der Google Cloud Console verfügbar. Beachten Sie, dass Logging-Gebühren für die Operations-Suite von Google Cloud anfallen. Um die Speicherkosten für Instanzen zu minimieren, werden die Logs general und slow query auf dem Instanzlaufwerk rotiert, wenn die Logdatei älter als 24 Stunden ist und in dieser Zeit keine Änderungen ausgeführt wurden oder wenn sie größer als 100 MB ist. Alte Logdateien werden nach der Rotation automatisch gelöscht.

Wenn für log_output der Wert NONE festgelegt ist, können Sie nicht auf die Logs zugreifen. Wenn Sie für log_output den Wert TABLE angeben, wird die Logausgabe in einer Tabelle in Ihrer Datenbank abgelegt. Eine sehr große Tabelle kann sich auf die Zeitdauer auswirken, die für einen Neustart der Instanz benötigt wird, bzw. dazu führen, dass die Instanz nicht mehr vom SLA abgedeckt ist. Darum wird die Option TABLE nicht empfohlen. Bei Bedarf können Sie Ihre Logtabellen mithilfe der API kürzen. Weitere Informationen finden Sie auf der Referenzseite zu instances.truncateLog.

expire_logs_days, binlog_expire_logs_seconds
Wenn Sie die Wiederherstellung zu einem bestimmten Zeitpunkt aktivieren, wird die Ablaufzeit Ihrer binären Logs durch den kleineren Aufbewahrungszeitraum des Transaktionslogs und den Wert dieses Flags bestimmt. Weitere Informationen finden Sie auf der Seite Aufbewahrung von Transaktionslogs.
innodb_buffer_pool_size

Der Wert von innodb_buffer_pool_size ist die Größe des Pufferpools in Byte. Sie können dieses Flag nicht für Instanzen aktivieren,die weniger als 3.840 MiB RAM haben.

Das Flag kann aber nicht für Maschinentypen mit gemeinsam genutztem Kern (f1_micro und g1_small) konfiguriert werden. Das Ändern dieses Flags in MySQL 5.6 erfordert einen Neustart.

In Cloud SQL sind die standardmäßig zulässigen Mindest- und Höchstwerte für das Flag innodb_buffer_pool_size vom Arbeitsspeicher (RAM) der Instanz abhängig. Diese Werte können grob als Prozentsatz des RAM der Instanz berechnet werden. Standardmäßig wird der Wert dieses Flags in der Regel so nah wie möglich am maximal zulässigen Wert festgelegt. Der maximal für die Zuweisung zulässige Prozentsatz erhöht sich mit der Instanzgröße. Der kleinstmögliche Wert beträgt in der Regel etwa 20 % des Arbeitsspeichers der Instanz.

Ungefähre Werte für dieses Flag:

RAM-Bereich der InstanzMin. %Standardeinstellung %Max. %
0 - 4.0 GB of RAM~34%
4.0 GB - 7.5 GB~20%~34%~34%
7,5 GB - 12 GB~20%~52%~52%
12 GB - 24 GB~20%~67%~67%
24 GB und höher~20%~72%~72%

Die genauen Werte können variieren. Zum Berechnen des aktuellen Werts für die Instanz führen Sie die folgende Abfrage aus:

  show global variables like 'innodb_buffer_pool_size'
  

Als Referenz sind im Folgenden die minimal zulässigen, die Standard- und die maximal zulässigen Werte für die vordefinierten Maschinentypen angegeben.

Vordefinierter Maschinentyp Instanz-RAM (GB) Minimum (GB)
(% des Gesamtwerts)
Standard (GB)
(% des Gesamtwerts)
Maximum (GB)
(% des Gesamtwerts)
f1-micro 0,6 - 0,053 -
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

Bei allen MySQL-Versionen 5.6 und höher ist der Standardwert ON.

innodb_flush_log_at_trx_commit
Wenn Sie eine bessere Leistung benötigen, empfehlen wir, den Wert auf 2 zu setzen. Cloud SQL unterstützt nicht das Festlegen des Werts für dieses Flag auf 0. Wenn Sie den Flag-Wert auf 2 setzen, müssen Sie entweder das Binärlog auf dem Replikat deaktivieren oder sync_binlog auf einen anderen Wert als 1 setzen.

Sie können dieses Flag nur für Lesereplikate und externe Serverreplikate aktivieren. Bei externen Serverreplikaten muss dieses Flag auf den Standardwert 1 gesetzt werden, um die vollständige ACID-Compliance zu gewährleisten. Sie können dieses Flag nicht für primäre Instanzen oder Failover-Replikate aktivieren.

max_heap_table_size, tmp_table_size

Eine Überlastung des verfügbaren Instanzarbeitsspeichers kann dann auftreten, wenn Sie für tmp_table_size und max_heap_table_size einen zu hohen Wert für die Anzahl an gleichzeitigen Abfragen festgelegt haben und die Instanz diese nicht mehr verarbeiten kann. Eine Überlastung des Arbeitsspeichers hat einen Absturz und Neustart der Instanz zur Folge.

Weitere Informationen zur Verwendung dieser Flags finden Sie unter Verwendung interner temporärer Tabellen in MySQL und MEMORY Storage Engine.

performance_schema

Sie können dieses Flag nicht für Instanzen aktivieren,die weniger als 26.624 MiB RAM haben. Wenn Sie dieses Flag aktivieren, ist es nicht möglich, für den Maschinentyp eine Größe festzulegen, die das Flag nicht unterstützt. Sie müssen dann zuerst dieses Flag deaktivieren.

In Cloud SQL geänderte System-Flags

Alle anderen Datenbanksystem-Flags, die nicht im Abschnitt Unterstützte Flags aufgeführt sind, werden als verwaltete Flags bezeichnet. Für bestimmte verwaltete Flags setzt Cloud SQL das Flag auf einen anderen Wert als die Standardeinstellung. Dies sorgt dafür, dass Cloud SQL-Instanzen zuverlässig ausgeführt werden. Die Werte dieser System-Flags können nicht geändert werden.

Verwaltete Flags, die keine Standardeinstellung haben, sind unten aufgeführt.

Variablenname Einstellung in Cloud SQL. Hinweise
binlog_format ROW Nur Unterschiede in MySQL 5.6
binlog_error_action ABORT_SERVER Nur Unterschiede in MySQL 5.6
innodb_file_format Barracuda Nur Unterschiede in MySQL 5.6
innodb_flush_method O_DIRECT
innodb_flush_neighbors 0 (in MySQL 5.6) und 2 (in MySQL 5.7 und 8.0)
innodb_io_capacity 5.000
innodb_buffer_pool_instances
Größe der Instanz
(erste Übereinstimmung)
innodb_buffer_pool_instances
< 1024 1
< 2048 1
< 7680 1
< 13312 2
< 26624 4
default 8
memlock wahr
skip_name_resolve AN
relay_log_info_repository TABELLE
relay_log_recovery AN
slave_net_timeout 30
master_info_repository TABELLE
rpl_semi_sync_master_enabled 1
rpl_semi_sync_master_timeout 3.000
innodb_page_cleaners 8 Nur Unterschiede in MySQL 5.7, 8.0
admin_address 127.0.0.1 Nur Unterschiede in MySQL 8.0
create_admin_listener_thread AN
port-open-timeout 120 Nur Unterschiede in MySQL 8.0
innodb_io_capacity_max 10000

Fehlerbehebung

Problem Fehlerbehebung
Nach dem Aktivieren eines Flags wechselt die Instanz zwischen Panik und Absturz. Wenden Sie sich an den Kundensupport, um ein Entfernen des Flags mit anschließendem hard drain anzufordern. Dadurch wird die Instanz auf einem anderen Host mit einer neuen Konfiguration und ohne das Flag bzw. ohne die Einstellung neu gestartet.
Beim Festlegen eines Flags wird die Fehlermeldung Bad syntax for dict arg angezeigt. Komplexe Parameterwerte wie durch Kommas getrennte Listen erfordern eine besondere Behandlung, wenn sie mit gcloud-Befehlen verwendet werden.
Die Zeitzone wird nicht automatisch geändert Die automatische Änderung der Zeitzone wird in Cloud SQL for MySQL nicht unterstützt und muss manuell vorgenommen werden. Sie wird nicht nach String, sondern nach Zeitzonenversatzwert angegeben.

Bearbeiten Sie die Instanz und ändern Sie das Flag default_time_zone. Namensbereiche werden nicht unterstützt. Beispiel:

Europe/LondonLondon liegt in der UTC-Zeitzone. Der unterstützte Wert für das Flag default_time_zone ist dann +00:00.

Nächste Schritte