Datenbankflags konfigurieren

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

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

In einigen Fällen ist es notwendig, mit dem Festlegen eines Flags ein anderes Flag zu setzen, damit die Funktionalität in vollem Umfang zur Verfügung steht.

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.

Datenbankflags konfigurieren

Datenbank-Flag festlegen

Console

  1. Erstellen Sie in der Google Cloud Console ein neues Google 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 log_connections und log_min_error_statement können Sie beispielsweise mit folgendem Befehl festlegen:

gcloud sql instances patch [INSTANCE_NAME] \
  --database-flags=log_connections=on,log_min_error_statement=error

Terraform

Verwenden Sie zum Hinzufügen von Datenbank-Flags eine Terraform-Ressource.

resource "google_sql_database_instance" "instance" {
  name             = "postgres-instance"
  region           = "us-central1"
  database_version = "POSTGRES_14"
  settings {
    database_flags {
      name  = "log_connections"
      value = "on"
    }
    database_flags {
      name  = "log_min_error_statement"
      value = "error"
    }
    tier = "db-custom-2-7680"
  }
  deletion_protection = false # set to true to prevent destruction of the resource
}

Änderungen anwenden

Führen Sie die folgenden Schritte aus, um Ihre Terraform-Konfiguration in einem Google Cloud-Projekt anzuwenden:

  1. Rufen Sie Cloud Shell auf.
  2. Legen Sie das Google Cloud-Projekt fest, auf das Sie die Terraform-Konfiguration anwenden möchten:
    export GOOGLE_CLOUD_PROJECT=PROJECT_ID
    
  3. Erstellen Sie ein Verzeichnis und öffnen Sie eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung .tf haben, z. B. main.tf:
    mkdir DIRECTORY && cd DIRECTORY && nano main.tf
    
  4. Kopieren Sie das Beispiel in main.tf.
  5. Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
  6. Speichern Sie die Änderungen, indem Sie Ctrl-x und dann y drücken.
  7. Initialisieren Sie Terraform:
    terraform init
  8. Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
    terraform plan

    Korrigieren Sie die Konfiguration nach Bedarf.

  9. Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie yes an der Eingabeaufforderung ein:
    terraform apply

    Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.

  10. Öffnen Sie Ihr Google Cloud-Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Google Cloud Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.

Änderungen löschen

So löschen Sie das Projekt:

  1. Um den Löschschutz zu deaktivieren, setzen Sie in der Terraform-Konfigurationsdatei das Argument deletion_protection auf false.
    deletion_protection =  "false"
  2. Wenden Sie die aktualisierte Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie yes an der Eingabeaufforderung ein:
    terraform apply
  1. Entfernen Sie Ressourcen, die zuvor mit Ihrer Terraform-Konfiguration angewendet wurden, indem Sie den folgenden Befehl ausführen und yes an der Eingabeaufforderung eingeben:

    terraform destroy

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 eine JSON-Antwort ähnlich wie diese 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 eine JSON-Antwort ähnlich wie diese 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 Google 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 eine JSON-Antwort ähnlich wie diese 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 eine JSON-Antwort ähnlich wie diese erhalten:

Aktuelle Werte von Datenbank-Flags abrufen

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

 SELECT name, setting FROM pg_settings;

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 zeigen Sie alle für eine Cloud SQL-Instanz gesetzten Flags an:

Console

  1. Erstellen Sie in der Google Cloud Console ein neues Google 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.

Unterstützte Flags

Flags, die unten nicht erwähnt werden, werden nicht unterstützt.

Für ein bestimmtes Flag unterstützt Cloud SQL eventuell einen anderen Wert oder Bereich für den entsprechenden PostgreSQL-Parameter oder für die entsprechende PostgreSQL-Option.

A | C | D | E | F | G | H | I | J | L | M | O | P | R | S | T | V | W

Cloud SQL-Flag Typ
Gültige Werte und Hinweise
Neustart
erforderlich?
auto_explain.log_analyze boolean
on | off
Der Standardwert ist Aus.
Nein
auto_explain.log_buffers boolean
on | off
Der Standardwert ist Aus.
Nein
auto_explain.log_min_duration Integer
-1 ... 2147483647
Der Standardwert ist -1.
Nein
auto_explain.log_format String
text|xml|json|yaml
Der Standardwert ist text.
Nein
auto_explain.log_level String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|log
Der Standardwert ist log.
Unterstützt in PostgreSQL 12 und höher.
Nein
auto_explain.log_nested_statements boolean
on | off
Der Standardwert ist Aus.
Nein
auto_explain.log_settings boolean
on off
Der Standardwert ist Aus.
Unterstützt in PostgreSQL 12 und höher.
Nein
auto_explain.log_timing boolean
on | off
Der Standardwert ist Ein.
Nein
auto_explain.log_triggers boolean
on | off
Der Standardwert ist Aus.
Nein
auto_explain.log_wal boolean
on off
Der Standardwert ist Aus.
Unterstützt in PostgreSQL 13 und höher.
Nein
auto_explain.log_verbose boolean
on | off
Der Standardwert ist Aus.
Nein
auto_explain.sample_rate Float
0 ... 1
Der Standardwert ist 1.
Nein
autovacuum boolean
on | off
Der Standardwert ist Ein.
Nutzungsinformationen, die sich auf das SLA auswirken können, finden Sie unter Betriebsrichtlinien für Cloud SQL for PostgreSQL-Instanzen.
Nein
autovacuum_analyze_scale_factor float
0 ... 100
Der Standardwert ist 0,1.
Nein
autovacuum_analyze_threshold integer
0 ... 2147483647
Der Standardwert ist 50.
Nein
autovacuum_freeze_max_age integer
100000 ... 2000000000
Der Standardwert ist 200000000.
Nutzungsinformationen, die sich auf das SLA auswirken können, finden Sie unter Betriebsrichtlinien für Cloud SQL for PostgreSQL-Instanzen.
Ja
autovacuum_max_workers integer
1 ... varies (see note)
Der Standardwert ist 3.
Ja
autovacuum_multixact_freeze_max_age integer
10000 ... 2000000000
Der Standardwert ist 400000000.
Nutzungsinformationen, die sich auf das SLA auswirken können, finden Sie unter Betriebsrichtlinien für Cloud SQL for PostgreSQL-Instanzen.
Ja
autovacuum_naptime integer
1 ... 2147483s
Der Standardwert ist 60.
Nein
autovacuum_vacuum_cost_delay integer
0 ... 100 ms, oder -1 zur Verwendung des Werts von vacuum_cost_delay
Für PostgreSQL 9.6, 10 und 11, Der Standardwert beträgt 2 ms.
Nein
autovacuum_vacuum_cost_limit integer
0 ... 10000, oder -1 zur Verwendung des Werts von vacuum_cost_limit
Der Standardwert ist -1.
Nein
autovacuum_vacuum_scale_factor float
0 ... 100
Der Standardwert ist 0,2.
Nein
autovacuum_vacuum_threshold integer
0 ... 2147483647
Der Standardwert ist 50.
Nein
autovacuum_work_mem integer
0 ... 2147483647, oder -1 zur Verwendung des Werts von maintenance_work_mem
Der Standardwert ist -1.
Nein
checkpoint_completion_target float
0.0 ... 1.0
Der Standardwert ist 0,9.
Nein
checkpoint_timeout integer
30 ... 86,400s
Der Standardwert ist 300 s.
Nutzungsinformationen, die sich auf das SLA auswirken können, finden Sie unter Betriebsrichtlinien für Cloud SQL for PostgreSQL-Instanzen.
Nein
checkpoint_warning integer
0 ... 2147483647s
Der Standardwert ist 30 s.
Nein
cloudsql.allow_passwordless_local_connections boolean
on | off
Der Standardwert ist off.
Nein
cloudsql.enable_auto_explain boolean
on | off
Der Standardwert ist off.
Ja
cloudsql.enable_pgaudit boolean
on off
Der Standardwert ist Aus.
Ja
cloudsql.enable_pg_bigm boolean
on | off
Standard: off
Ja
cloudsql.enable_pg_cron boolean
on | off
Der Standardwert ist off.
Unterstützt in PostgreSQL 10 und höher.
Ja
cloudsql.enable_pg_hint_plan boolean
on | off
Der Standardwert ist off.
Ja
cloudsql.enable_pglogical boolean
on | off
Der Standardwert ist off.
Ja
cloudsql.iam_authentication boolean
on | off
Der Standardwert ist off.
Nein
cloudsql.logical_decoding boolean
on | off
Der Standardwert ist off.
Ja
cloudsql.pg_shadow_select_role string
Nein
commit_delay integer
0 ... 100000
Der Standardwert ist 0.
Nein
commit_siblings integer
0 ... 1000
Der Standardwert ist 5.
Nein
constraint_exclusion enumeration
partition on off
Der Standardwert ist partition.
Nein
cpu_index_tuple_cost float
0.0 ... inf
Der Standardwert ist 0,005.
Nein
cpu_operator_cost float
0.0 ... inf
Der Standardwert ist 0,0025.
Nein
cpu_tuple_cost float
0.0 ... inf
Der Standardwert ist 0,01.
Nein
cron.database_name String.
Unterstützt in PostgreSQL 10 und höher.
Ja
cron.log_statement boolean
on | off
Die Standardeinstellung ist Ein.
Unterstützt in PostgreSQL 10 und höher.
Ja
cron.log_run boolean
on | off
Die Standardeinstellung ist Ein.
Unterstützt in PostgreSQL 10 und höher.
Ja
cron.max_running_jobs Integer
0 ... varies
Der Standardwert ist 5.
Unterstützt in PostgreSQL 10 und höher.
Ja
cron.log_min_messages String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|error|log|fatal|panic
Der Standardwert ist warning.
Unterstützt in PostgreSQL 10 und höher.
Nein
cursor_tuple_fraction float
0.0 ... 1.0
Der Standardwert ist 0,1.
Nein
deadlock_timeout integer
1 ... 2147483647 ms
Der Standardwert ist 1000 ms.
Nein
default_statistics_target integer
1 ... 10000
Der Standardwert ist 100.
Nein
default_tablespace string Nein
default_transaction_deferrable boolean
on | off
Der Standardwert ist Aus.
Nein
default_transaction_isolation enumeration
serializable | 'repeatable read' | 'read committed' | 'read uncommitted'
Der Standardwert ist 'read committed'.
Nein
effective_cache_size integer
Der Größenbereich liegt zwischen 10 % und 70 % des Arbeitsspeichers der Instanz.
Einheit ist 8 KB.
Der Standardwert beträgt 40 % des VM-Arbeitsspeichers. Bei einem Instanzspeicher mit 45 GB ist der Standardwert beispielsweise 18537160 KB.
Nein
enable_bitmapscan boolean
on | off
Der Standardwert ist Ein.
Nein
enable_hashagg boolean
on | off
Der Standardwert ist Ein.
Nein
enable_hashjoin boolean
on | off
Der Standardwert ist Ein.
Nein
enable_indexonlyscan boolean
on | off
Der Standardwert ist Ein.
Nein
enable_indexscan boolean
on | off
Der Standardwert ist Ein.
Nein
enable_material boolean
on | off
Der Standardwert ist Ein.
Nein
enable_mergejoin boolean
on | off
Der Standardwert ist Ein.
Nein
enable_nestloop boolean
on | off
Der Standardwert ist Ein.
Nein
enable_seqscan boolean
on | off
Der Standardwert ist Ein.
Nein
enable_sort boolean
on | off
Der Standardwert ist Ein.
Nein
enable_tidscan boolean
on | off
Der Standardwert ist Ein.
Nein
force_parallel_mode enumeration
off | on | regress
Der Standardwert ist Aus.
Nein
from_collapse_limit integer
1 ... 2147483647
Der Standardwert ist 8.
Nein
geqo boolean
on | off
Der Standardwert ist Ein.
Nein
geqo_effort integer
1 ... 10
Der Standardwert ist 5.
Nein
geqo_generations integer
0 ... 2147483647
Der Standardwert ist 0.
Nein
geqo_pool_size integer
0 ... 2147483647
Der Standardwert ist 0.
Nein
geqo_seed float
0.0 ... 1.0
Der Standardwert ist 0.
Nein
geqo_selection_bias float
1.5 ... 2.0
Der Standardwert ist 2.
Nein
geqo_threshold integer
2 ... 2147483647
Der Standardwert ist 12.
Nein
gin_fuzzy_search_limit integer
0 ... 2147483647
Der Standardwert ist 0.
Nein
gin_pending_list_limit integer
64 ... 2147483647 KB
Der Standardwert ist 4096 KB.
Nein
hot_standby_feedback boolean
on | off
Der Standardwert ist Aus.
Nein
huge_pages enumeration
try off
Der Standardwert ist try.
Ja
idle_in_transaction_session_timeout integer
0 ... 2147483647 ms
Der Standardwert ist 0.
Nein
join_collapse_limit integer
1 ... 2147483647
Der Standardwert ist 8.
Nein
lock_timeout integer
0 ... 2147483647 ms
Der Standardwert ist 0.
Nein
log_autovacuum_min_duration integer
0 ... 2147483647 ms oder -1 zur Deaktivierung
Der Standardwert ist 0.
Nein
log_checkpoints boolean
on | off
Der Standardwert ist Aus.
Nein
log_connections boolean
on | off
Der Standardwert ist Aus.
Nein
log_disconnections boolean
on | off
Der Standardwert ist Aus.
Nein
log_duration boolean
on | off
Der Standardwert ist Aus.
Nein
log_error_verbosity enumeration
terse default verbose
Der Standardwert ist default.
Nein
log_executor_stats boolean
on | off
Der Standardwert ist Aus.
Nein
log_hostname boolean
on | off
Der Standardwert ist Aus.
Nein
log_lock_waits boolean
on | off
Der Standardwert ist Aus.
Nein
log_min_duration_statement integer
-1 ... 2147483647 ms
Der Standardwert ist -1.
Nein
log_min_error_statement enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | info | notice | warning | error | log | fatal | panic
Der Standardwert ist error.
Nein
log_min_messages enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | info | notice | warning | error | log | fatal | panic
Der Standardwert ist warning.
Nein
log_parser_stats boolean
on | off
Der Standardwert ist Aus.
Nein
log_planner_stats boolean
on | off
Der Standardwert ist Aus.
Nein
log_replication_commands boolean
on | off
Der Standardwert ist Aus.
Nein
log_statement enumeration
none | ddl | mod | all
Wird auf mod gesetzt, um alle DDL-Anweisungen (Data Definition Language, Datendefinitionssprache) zu protokollieren, sowie Datenänderungsanweisungen wie INSERT, UPDATE, DELETE, TRUNCATE
Der Standardwert ist none.
Nein
log_statement_stats boolean
on | off
Kann möglicherweise nicht zusammen mit log_parser_stats, log_planner_stats oder log_executor_stats aktiviert werden.
Der Standardwert ist Aus.
Nein
log_temp_files integer
0 ... 2147483647 KB, oder -1 zur Deaktivierung
Der Standardwert ist 0.
Nein
maintenance_work_mem integer
1024 ... 2147483647 KB
Der Standardwert ist 64 MB.
Nein
max_connections integer
14 ... varies (see note)
Der Standardwert hängt vom Instanzspeicher ab.
Instanzarbeitsspeicher (GB)Standardwert
Winzig (~0,5)25
Klein (~1,7)50
3,75–6100
6–7,5200
7,5–15400
15–30500
30–60600
64–120800
>=1201.000

Der Wert für Replikate muss größer oder gleich dem Wert für das Primärreplikat sein. Änderungen am Primärreplikat werden an Replikate weitergegeben, deren Wert niedriger als der neue Wert für das Primärreplikat ist oder für die der Standardwert gilt.

Ja
max_locks_per_transaction integer
10 ... 2,147,483,647
Der Standardwert ist 64.

Der Wert für Replikate muss größer oder gleich dem Wert für das Primärreplikat sein. Änderungen am Primärreplikat werden an Replikate weitergegeben, deren Wert niedriger als der neue Wert für das Primärreplikat ist oder für die der Standardwert gilt.

Ja
max_logical_replication_workers integer
4 ... 8192
Die Standardeinstellung ist 4.
Unterstützt in PostgreSQL 10 und höher.

Der Wert für Replikate muss größer oder gleich dem Wert für das Primärreplikat sein. Änderungen am Primärreplikat werden an Replikate weitergegeben, deren Wert niedriger als der neue Wert für das Primärreplikat ist oder für die der Standardwert gilt.

Ja
max_parallel_maintenance_workers integer
0 ... varies
Der Standardwert ist 2.
Unterstützt in PostgreSQL 11 und höher.
Nein
max_parallel_workers integer
0 ... varies
Der Standardwert ist 8.
Unterstützt in PostgreSQL 10 und höher.
Nein
max_parallel_workers_per_gather integer
0 ... varies
Der Standardwert ist 2.
Nein
max_pred_locks_per_page integer
0 ... 2147483647
Der Standardwert ist 2.
Unterstützt in PostgreSQL 10 und höher.
Ja
max_pred_locks_per_relation integer
-2147483648 ... 2147483647
Die Standardeinstellung ist -2.
Unterstützt in PostgreSQL 10 und höher.
Ja
max_pred_locks_per_transaction integer
64 ... 1048576
Ja
max_prepared_transactions integer
0 ... varies
Speichergröße (MB)Maximalwert
0 - 3,84030.000
3,840 - 7,68085.000
7,680 - 15,360200.000
15,360 und mehr262.000

Der Wert für Replikate muss größer oder gleich dem Wert für das Primärreplikat sein. Änderungen am Primärreplikat werden an Replikate weitergegeben, deren Wert niedriger als der neue Wert für das Primärreplikat ist oder für die der Standardwert gilt.

Ja
max_replication_slots integer
10 ... varies
Der Standardwert ist 10.
Ja
max_standby_archive_delay integer
0 ... 2147483647 ms, oder -1 für unbegrenztes Warten
Nein
max_standby_streaming_delay integer
0 ... 2147483647  ms, oder -1 für unbegrenztes Warten
Nein
max_sync_workers_per_subscription integer
2 ... 64
Darf nicht größer als max_logical_replication_workers sein.
Nein
max_wal_senders integer
10 ... varies
Der Standardwert ist 10.
Ja
max_wal_size integer
2 ... 2147483647

Die Einheit ist 16 MB (die WAL-Dateigröße) für Version 9.6 und 1 MB für PostgreSQL 10 und höher.

Der Standardwert ist 1504 MB, wenn der Instanzspeicher größer oder gleich 3.75 GB ist. Der Standardwert ist 1 GB, wenn der Instanzspeicher kleiner als 3.75 GB ist.

Nutzungsinformationen, die sich auf das SLA auswirken können, finden Sie unter Betriebsrichtlinien für Cloud SQL for PostgreSQL-Instanzen.
Nein
max_worker_processes integer
8 ... varies
Ja
min_parallel_relation_size integer
0 ... 715827882
Die Einheit ist 8 KB
Unterstützt nur in PostgreSQL 9.6.
Nein
min_wal_size integer
32 ... 2147483647

Die Einheit ist 16 MB (die WAL-Dateigröße) für Version 9.6 und 1 MB für PostgreSQL 10 und höher.

Nein
old_snapshot_threshold integer
0 ... 86400 Min. oder -1 zur Deaktivierung
Der Standardwert ist -1.
Ja
parallel_setup_cost float
0.0 ... inf
Der Standardwert ist 1000.
Nein
parallel_tuple_cost float
0.0 ... inf
Der Standardwert ist 0,1.
Nein
password_encryption enumeration
md5 | scram-sha-256

Die Standardeinstellung hängt von der PostgreSQL-Version ab. Bei PostgreSQL-Versionen 10 bis 13 ist der Standardwert md5. Ab PostgreSQL 14 ist die Standardeinstellung scram-sha-256.

Nein
pg_bigm.enable_recheck boolean
on | off
Nein
pg_bigm.gin_key_limit integer
0 ... 2147483647
Nein
pg_bigm.similarity_limit float
0.0 ... 1.0
Nein
pg_hint_plan.enable_hint boolean
on | off
Der Standardwert ist Ein.
Nein
pg_hint_plan.debug_print String
off|on|detailed|verbose|0|1||2|3|no|yes|false|true
Der Standardwert ist Aus.
Nein
pg_hint_plan.parse_messages String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|error|log
Der Standardwert ist info.
Nein
pg_hint_plan.message_level String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|error|log
Der Standardwert ist log.
Nein
pg_hint_plan.enable_hint_table boolean
on | off
Der Standardwert ist Aus.
Nein
pglogical.batch_inserts boolean
on | off
Der Standardwert ist off.
Ja
pglogical.conflict_log_level String
Der Standardwert ist LOG.
Dieses Flag akzeptiert dieselben Werte wie log_min_messages.
Nein
pglogical.conflict_resolution String
error|apply_remote|keep_local|last_update_wins|first_update_wins Der Standardwert ist apply_remote.
Nein
pglogical.extra_connection_options String
Akzeptiert PostgreSQL-Keyword/Wert-Verbindungsstrings.
Die Standardeinstellung ist der leerer String.
Nein
pglogical.synchronous_commit boolean
on | off
Der Standardwert ist on.
Ja
pglogical.use_spi boolean
on | off
Der Standardwert ist off.
Ja
pg_stat_statements.max integer
100 ... 2147483647
Der Standardwert ist 5000.
Ja
pg_stat_statements.save boolean
on | off
Der Standardwert ist Ein.
Nein
pg_stat_statements.track enumeration
none | top | all
Der Standardwert ist top.
Nein
pg_stat_statements.track_utility boolean
on | off
Der Standardwert ist Ein.
Nein
pgaudit.log enumeration
read | write | function | role | ddl | misc | misc_set | all|none

Sie können mehrere Klassen mithilfe einer durch Kommas getrennten Liste angeben und eine Klasse abziehen, wenn Sie ihr ein --Zeichen voranstellen. Die Standardeinstellung ist none.

Nein
pgaudit.log_catalog boolean
on | off
Der Standardwert ist on.
Nein
pgaudit.log_client boolean
on | off
Der Standardwert ist off.
Nein
pgaudit.log_level enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | info | notice | warning | error | log
Der Standardwert ist log. Außerdem ist pgaudit.log_level nur aktiviert, wenn pgaudit.log_client aktiviert ist.
Nein
pgaudit.log_parameter boolean
on | off
Der Standardwert ist off.
Nein
pgaudit.log_relation boolean
on | off
Der Standardwert ist off.
Nein
pgaudit.log_statement_once boolean
on | off
Der Standardwert ist off.
Nein
pgaudit.role string
Es gibt keinen Standardwert.
Nein
random_page_cost float
0.0 ... inf
Der Standardwert ist 4.
Nein
session_replication_role enumeration
origin | replica | local
Kann nur in der aktuellen Sitzung festgelegt werden
-
replacement_sort_tuples integer
0 ... 2147483647
Nein
shared_buffers integer
Der Größenbereich liegt zwischen 10 % und 70 % des Arbeitsspeichers der Instanz.
Einheit ist 8 KB.
Die Standardeinstellung beträgt ein Drittel des VM-Arbeitsspeichers der Instanz (in MB). Für 45 an Instanzspeicher ist der Standardwert beispielsweise 15085 MB.
Ja
ssl_max_protocol_version enumeration
Postgres 14: Legt die höchste zu verwendende SSL-/TLS-Protokollversion fest. Gültige Werte sind wie für ssl_min_protocol_version, wobei ein leerer String eingefügt wird, der die Angabe einer beliebigen Protokollversion ermöglicht.
Unterstützt in PostgreSQL 12 und höher.
Nein
ssl_min_protocol_version enumeration
Postgres 14: Legt die minimale SSL/TLS-Protokollversion fest, die verwendet werden soll. Gültige Werte: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3.
Der Standardwert ist TLSv1.
Unterstützt in PostgreSQL 12 und höher.
Nein
standard_conforming_strings boolean
on | off
Der Standardwert ist Ein.
Nein
synchronize_seqscans boolean
on | off
Der Standardwert ist Ein.
Nein
tcp_keepalives_count integer
0 ... 2147483647
Der Standardwert ist 5.
Nein
tcp_keepalives_idle integer
0 ... 2147483647
Der Standardwert ist 60.
Nein
tcp_keepalives_interval integer
0 ... 2147483647
Der Standardwert ist 60.
Nein
temp_buffers integer
100 ... 1,073,741,823
Einheit ist 8 KB
Nein
temp_file_limit integer
1048576 ... 2147483647 KB
Der Standardwert beträgt 10 % der ursprünglichen Laufwerkgröße. Bei einem Laufwerk mit 600 GB ist der Standardwert beispielsweise 10262623 KB.
Nein
trace_notify boolean
on | off
Der Standardwert ist Aus.
Nein
trace_recovery_messages enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | log | notice | warning | error
Der Standardwert ist log.
Nein
trace_sort boolean
on | off
Der Standardwert ist Aus.
Nein
track_activities boolean
on | off
Der Standardwert ist Ein.
Nein
track_activity_query_size integer
100 ... 102400
Der Standardwert ist 1 KB.
Ja
track_commit_timestamp boolean
on | off
Der Standardwert ist Aus.
Ja
track_counts boolean
on | off
Der Standardwert ist Ein.
Nein
track_functions enumeration
none | pl | all
Der Standardwert ist none.
Nein
track_io_timing boolean
on | off
Der Standardwert ist Aus.
Nein
vacuum_cost_delay integer
0 ... 100 ms
Der Standardwert ist 0.
Nein
vacuum_cost_limit integer
1 ... 10000
Der Standardwert ist 200.
Nein
vacuum_freeze_min_age integer
0 ... 1000000000
Der Standardwert ist 50000000.
Nein
vacuum_freeze_table_age integer
0 ... 2000000000
Der Standardwert ist 150000000.
Nein
vacuum_multixact_freeze_min_age integer
0 ... 1000000000
Der Standardwert ist 5000000.
Nein
vacuum_multixact_freeze_table_age integer
0 ... 2000000000
Der Standardwert ist 150000000.
Nein
wal_buffers integer
Der Größenbereich liegt zwischen 10 % und 70 % des Arbeitsspeichers der Instanz.
Einheit ist 8 KB.
The default is 16 MB.
Ja
wal_compression boolean
on | off
Der Standardwert ist Aus.
Nein
wal_receiver_timeout integer
0 ... 2147483647
Der Standardwert beträgt 60 Sekunden.

Dieses Flag wirkt sich auf den WAL-Sender und -Empfänger aus. Wenn dieses Flag nicht korrekt festgelegt ist, wirkt sich das Flag auf die logische und physische Replikation aus. Dieses Flag wirkt sich auch auf die Replikationsleistung und die Latenz aus. Ein Wert von null deaktiviert das Zeitlimitverfahren. Die Einheit ist Millisekunden.

Nein
wal_sender_timeout integer
0 ... 2147483647
Der Standardwert beträgt 60 Sekunden.

Dieses Flag wirkt sich auf den WAL-Sender und -Empfänger aus. Wenn dieses Flag nicht korrekt festgelegt ist, wirkt sich das Flag auf die logische und physische Replikation aus. Dieses Flag wirkt sich auch auf die Replikationsleistung und die Latenz aus. Ein Wert von null deaktiviert das Zeitlimitverfahren. Die Einheit ist Millisekunden.

Nein
work_mem integer
64 ... 2147483647 KB
Der Standardwert ist 4 MB.
Nein

Spezielle Flags

bgwriter

PostgreSQL hat ein Flag für einen Hintergrundautor (bgwriter). Dieses Flag gibt Schreibvorgänge für neue oder geänderte freigegebene Zwischenspeicher aus. Diese freigegebenen Zwischenspeicher werden als „dirty buffers” bezeichnet. Wenn die Anzahl der bereinigten freigegebenen Puffer nicht ausreicht, schreibt der Hintergrundautor schmutzige Puffer in das Dateisystem und markiert sie als sauber.

Zwei Flags, die mit dem Flag bgwriter verknüpft sind, sind bgwriter_delay und bgwriter_lru_maxpages. bgwriter_delay gibt die Verzögerung zwischen den Aktivitätsrunden für den Hintergrundautor in Millisekunden (ms) an und bgwriter_lru_maxpages gibt an, wie viele Puffer vom Hintergrundautor geschrieben werden.

Der Standardwert für das Flag bgwriter ist 200 ms. Wenn Sie jedoch ein Solid State Drive (SSD) auswählen, das größer als 500 GB ist, wird der Wert des Flags bgwriter_delay auf 50 und der Wert des Flags bgwriter_lru_maxpages auf 200 gesetzt.

Weitere Informationen zum Hintergrundautor finden Sie in der PostgreSQL-Dokumentation.

session_replication_role

PostgreSQL hat ein Flag session_replication_role, das für die logische Replikation verwendet wird und Einschränkungstrigger in einzelnen Sitzungen deaktivieren kann.

Manchmal kann dieses Flag auch für Wartungsvorgänge verwendet werden, um Einschränkungen (meist Fremdschlüssel) zu umgehen.

Dieses Flag kann in einer Sitzung von Nutzern festgelegt werden, für die das REPLICATION-Attribut gesetzt wurde. Das REPLICATION-Attribut kann für Nutzer durch cloudsqlsuperuser festgelegt werden, wenn eines der Flags cloudsql.enable_pglogical oder cloudsql.logical_decoding für die Instanz gesetzt wurde.

Dieses Flag kann nicht für die gesamte Instanz gesetzt werden.

Fehlerbehebung

Problem Fehlerbehebung
Es ist kein Flag zur Festlegung der Zeitzone vorhanden.

In Cloud SQL unterstützen PostgreSQL und SQL Server Zeitzonen-Flags zur Anpassung der Zeitzone an die Anforderungen von Nutzern nicht. Sie können die Zeitzone pro Sitzung festlegen. Diese Einstellung wird jedoch gelöscht, sobald Sie sich abmelden.

Eine bessere Lösung besteht darin, eine Verbindung zur Datenbank herzustellen und als Datenbankzeitzone die gewünschte Zeitzone pro Nutzer oder Datenbank festzulegen.

In Cloud SQL for PostgreSQL können Sie Folgendes angeben: Diese Einstellungen bleiben nach dem Schließen einer Sitzung erhalten. Dadurch wird eine .conf-Konfiguration imitiert:


ALTER DATABASE dbname SET TIMEZONE TO 'timezone';
ALTER USER username SET TIMEZONE TO 'timezone';
    

Nächste Schritte