Verwaltetes Verbindungs-Pooling konfigurieren

Auf dieser Seite wird beschrieben, wie Sie Managed Connection Pooling für Ihre Cloud SQL-Instanzen konfigurieren.

Hinweise

Sie können den verwalteten Verbindungspool für eine Instanz bei der Erstellung aktivieren oder eine vorhandene Instanz bearbeiten, um ihn zu aktivieren.

Verwaltetes Verbindungs-Pooling für eine neue Instanz aktivieren

Informationen zum Erstellen einer Instanz mit aktiviertem verwalteten Verbindungspooling finden Sie unter Instanzen erstellen. Sie können Managed Connection Pooling für eine Instanz mit der gcloud CLI oder der Cloud SQL API aktivieren.

Verwaltetes Verbindungspooling für eine vorhandene Instanz aktivieren

Sie können Managed Connection Pooling für eine vorhandene Instanz über dieGoogle Cloud Console, die gcloud CLI oder die Cloud SQL API aktivieren. Sie müssen das verwaltete Verbindungs-Pooling aktivieren, bevor Sie die Optionen für das verwaltete Verbindungs-Pooling ändern können.

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Suchen Sie die Instanz, für die Sie den verwalteten Verbindungspool aktivieren möchten. Klicken Sie auf den Instanznamen, um die Übersichtsseite der Instanz zu öffnen.

  3. Klicken Sie auf Bearbeiten.

  4. Maximieren Sie unter Instanz anpassen den Eintrag Verbindungen.

  5. Klicken Sie das Kästchen Verwalteten Verbindungspool aktivieren an, um den verwalteten Verbindungspool zu aktivieren.

  6. Klicken Sie auf Speichern.

gcloud

Verwenden Sie den Befehl gcloud beta sql instances, um das verwaltete Verbindungspooling zu aktivieren.

  gcloud beta sql instances patch INSTANCE_NAME \
  --enable-connection-pooling

Ersetzen Sie Folgendes:

  • INSTANCE_NAME: Der Name der Cloud SQL-Instanz, für die Sie Managed Connection Pooling aktivieren möchten.

REST Version 1

Verwenden Sie den folgenden Befehl und legen Sie connectionPoolingEnabled fest, um Managed Connection Pooling für eine vorhandene Instanz zu aktivieren:

Ersetzen Sie diese Werte in den folgenden 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": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": true
    }
  }
}

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

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Verwenden Sie den folgenden Befehl und legen Sie connectionPoolingEnabled fest, um Managed Connection Pooling für eine vorhandene Instanz zu aktivieren:

Ersetzen Sie diese Werte in den folgenden 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": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": true
    }
  }
}

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

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Verwaltetes Verbindungs-Pooling für eine Instanz ändern

Nachdem Sie das verwaltete Verbindungs-Pooling aktiviert haben, können Sie es mit den verfügbaren Konfigurationsoptionen anpassen. Diese Konfigurationsoptionen werden als Pool-Flags für das Managed Connection Pooling bezeichnet. Konfigurationen, die dem verwalteten Verbindungspooling hinzugefügt werden, werden auf alle von der Instanz verwendeten Pooler angewendet. Weitere Informationen zu den verfügbaren Konfigurationsoptionen, ihren Standardwerten und Bereichen finden Sie unter Verfügbare Konfigurationsoptionen.

So ändern Sie die verfügbaren Konfigurationsoptionen für den verwalteten Verbindungspool für eine Instanz:

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Suchen Sie die Instanz, für die Sie den verwalteten Verbindungspool aktivieren möchten. Klicken Sie auf den Instanznamen, um die Übersichtsseite der Instanz zu öffnen.

  3. Klicken Sie auf Bearbeiten.

  4. Maximieren Sie unter Instanz anpassen den Eintrag Verbindungen.

  5. Maximieren Sie unter Verwalteter Verbindungspool die Erweiterten Pooling-Optionen.

    Ändern Sie die verfügbaren Pooling-Optionen, die Sie aktualisieren möchten.

  6. Klicken Sie auf Speichern.

gcloud

Verwenden Sie den Befehl gcloud beta sql instances, um Konfigurationsoptionen zu ändern.

  gcloud beta sql instances patch INSTANCE_NAME \
  --connection-pool-flags=CONFIGURATION_NAME=CONFIGURATION_VALUE

Ersetzen Sie Folgendes:

  • INSTANCE_NAME: Der Name der Cloud SQL-Instanz, für die Sie das Managed Connection Pooling ändern möchten.
  • CONFIGURATION_NAME: Der Name der Konfigurationsoption, die Sie ändern möchten. Eine Liste aller verfügbaren Konfigurationsoptionen finden Sie unter Verfügbare Konfigurationsoptionen.
  • CONFIGURATION_VALUE: Der neue Wert für die ausgewählte Konfigurationsoption.

REST Version 1

Wenn Sie die verfügbaren Konfigurationen für das Managed Connection Pooling ändern möchten, verwenden Sie den folgenden Befehl und legen Sie ConnectionPoolConfig fest:

Ersetzen Sie diese Werte in den folgenden 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": {
    "connectionPoolConfig": {
      "flags":
      [
        {
          "name": "CONFIGURATION_NAME",
          "value":"CONFIGURATION_VALUE"
        }
      ]
    }
  }
}

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

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Wenn Sie die verfügbaren Konfigurationen für das Managed Connection Pooling ändern möchten, verwenden Sie den folgenden Befehl und legen Sie ConnectionPoolConfig fest:

Ersetzen Sie diese Werte in den folgenden 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": {
    "connectionPoolConfig": {
      "flags":
      [
        {
          "name": "CONFIGURATION_NAME",
          "value":"CONFIGURATION_VALUE"
        }
      ]
    }
  }
}

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

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Verwaltetes Verbindungs-Pooling für eine Instanz deaktivieren

Sie können Managed Connection Pooling für eine vorhandene Instanz über dieGoogle Cloud Console, die gcloud CLI oder die Cloud SQL API deaktivieren.

So deaktivieren Sie das Managed Connection Pooling für eine Instanz:

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Suchen Sie die Instanz, für die Sie das verwaltete Verbindungspooling deaktivieren möchten. Klicken Sie auf den Instanznamen, um die Übersichtsseite der Instanz zu öffnen.

  3. Klicken Sie auf Bearbeiten.

  4. Maximieren Sie unter Instanz anpassen den Eintrag Verbindungen.

  5. Wenn Sie das verwaltete Verbindungs-Pooling deaktivieren möchten, entfernen Sie das Häkchen aus dem Kästchen Verwalteten Verbindungspool aktivieren.

  6. Klicken Sie auf Speichern.

gcloud

Verwenden Sie den Befehl gcloud beta sql instances, um das Managed Connection Pooling zu deaktivieren.

  gcloud beta sql instances patch INSTANCE_NAME \
  --no-enable-connection-pooling

Ersetzen Sie Folgendes:

  • PROJECT_ID: Der Name der Cloud SQL-Instanz, für die Sie das Managed Connection Pooling deaktivieren möchten.

REST Version 1

Verwenden Sie den folgenden Befehl, um das Managed Connection Pooling für eine Instanz zu deaktivieren, und legen Sie connectionPoolingEnabled fest:

Ersetzen Sie diese Werte in den folgenden 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": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": false
    }
  }
}

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

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Verwenden Sie den folgenden Befehl, um das Managed Connection Pooling für eine Instanz zu deaktivieren, und legen Sie connectionPoolingEnabled fest:

Ersetzen Sie diese Werte in den folgenden 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": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": false
    }
  }
}

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

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Status des verwalteten Verbindungs-Poolings für eine Instanz ansehen

Sie können den Status von Managed Connection Pooling für eine Instanz in der Google Cloud Console, mit der gcloud CLI oder mit der Cloud SQL API aufrufen.

So rufen Sie den Status von Managed Connection Pooling für eine Cloud SQL Enterprise Plus-Instanz auf:

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Suchen Sie die Instanz, für die Sie den Status des verwalteten Verbindungspools aufrufen möchten. Klicken Sie auf den Instanznamen, um die Übersichtsseite der Instanz zu öffnen.

    Im Abschnitt Verbindungen wird angezeigt, ob der verwaltete Verbindungspool aktiviert oder deaktiviert ist.

gcloud

  gcloud beta sql instances describe INSTANCE_NAME
  --format="value(settings.connectionPoolConfig.connectionPoolingEnabled)"

Ersetzen Sie Folgendes:

  • PROJECT_ID: Der Name der Cloud SQL-Instanz, für die Sie den Status von Managed Connection Pooling aufrufen möchten.

    Wenn das verwaltete Verbindungs-Pooling aktiviert ist, wird die folgende Antwort zurückgegeben:

    connectionPoolingEnabled: true

REST Version 1

Verwenden Sie den folgenden Befehl, um den Status von Managed Connection Pooling für Ihre Cloud SQL-Instanz aufzurufen, und suchen Sie nach connectionPoolingEnabled:

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

HTTP-Methode und URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

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

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-custom-2-7680",
    "kind": "sql#settings",
    "availabilityType": "REGIONAL",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscEnabled": true
      },
      "ipv4Enabled": false
    },
  ...
  "createTime": "2023-06-14T18:48:34.975Z",
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE",
  "pscServiceAttachmentLink": "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_ID",
  "dnsName": "DNS_NAME"
}

REST v1beta4

Verwenden Sie den folgenden Befehl, um den Status von Managed Connection Pooling für Ihre Cloud SQL-Instanz aufzurufen, und suchen Sie nach connectionPoolingEnabled:

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

HTTP-Methode und URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

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

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-custom-2-7680",
    "kind": "sql#settings",
    "availabilityType": "REGIONAL",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscEnabled": true
      },
      "ipv4Enabled": false
    },
  ...
  "createTime": "2023-06-14T18:48:34.975Z",
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE",
  "pscServiceAttachmentLink": "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_ID",
  "dnsName": "DNS_NAME"
}

Verwaltetes Verbindungs-Pooling überwachen

Sie können überwachen, wie Managed Connection Pooling auf Ihren Cloud SQL-Instanzen ausgeführt wird. Verwenden Sie dazu die folgenden Messwerte für Cloud SQL Managed Connection Pooling:

Messwertname Beschreibung
num_pools Die Gesamtzahl der Verbindungspools pro Datenbank.
client_connection Erfasst die Anzahl der Verbindungen nach dem Status der Clientverbindung. Die in diesem Messwert enthaltenen Status sind:
  • active: Die Anzahl der aktiven Verbindungen pro Datenbank, einschließlich der inaktiven Clients, für die keine ausstehenden Abfrageanfragen vorhanden sind.
  • waiting: Die Anzahl der Clients, die pro Datenbank auf eine Serververbindung warten.
server_connections Erfasst die Anzahl der Serververbindungen nach dem Status der Serververbindung. Die in diesem Messwert enthaltenen Status sind:
  • active: Die Anzahl der aktiven Verbindungen pro Datenbank.
  • waiting: Die Anzahl der inaktiven Serververbindungen pro Datenbank.
client_connections_avg_wait_time Die durchschnittliche Zeit, die alle Clients im Wartestatus für einen Server verbringen.

Weitere Informationen zu diesen Messwerten finden Sie unter Cloud SQL-Messwerte. Informationen zum Aufrufen dieser Messwerte über die Google Cloud Console finden Sie unter Messwerte auf der Cloud SQL-Instanzübersichtsseite ansehen.

Nächste Schritte