Verbindung zu Cloud SQL for MySQL über die flexible App Engine-Umgebung herstellen

Hier erfahren Sie, wie Sie in der flexiblen App Engine-Umgebung eine Beispielanwendung bereitstellen, die über die Google Cloud Console und eine Clientanwendung mit einer MySQL-Instanz verbunden ist.

Angenommen, Sie führen alle Schritte zeitnah aus. Die in dieser Kurzanleitung erstellten Ressourcen kosten in der Regel weniger als einen Dollar (US-Dollar).

Vorbereitung

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Aktivieren Sie die Cloud APIs, die zum Ausführen einer Cloud SQL-Beispielanwendung in der flexiblen App Engine-Umgebung erforderlich sind.

    Klicken Sie auf die Schaltfläche unten, um die für diese Kurzanleitung erforderlichen APIs zu aktivieren.

    APIs aktivieren

    Dadurch werden die folgenden APIs aktiviert:

    • Cloud SQL Admin API
    • Compute Engine API
    • Cloud Build API
    • Cloud Logging API

    Mit einem Klick auf die Schaltfläche aktivieren Sie auch die flexible Google App Engine-Umgebung.

    Klicken Sie auf die folgende Schaltfläche, um Cloud Shell zu öffnen, die Befehlszeilenzugriff auf Ihre Google Cloud Ressourcen direkt über den Browser bietet. Mit Cloud Shell können Sie die in dieser Kurzanleitung vorgestellten gcloud-Befehle ausführen.

    Cloud Shell öffnen

    Führen Sie den folgenden gcloud-Befehl mit Cloud Shell aus:

    gcloud services enable appengineflex.googleapis.com sqladmin.googleapis.com \
    compute.googleapis.com cloudbuild.googleapis.com logging.googleapis.com

    Mit diesem Befehl werden die folgenden APIs aktiviert:

    • Cloud SQL Admin API
    • Compute Engine API
    • Cloud Build API
    • Cloud Logging API

    Mit dem obigen Befehl aktivieren Sie auch die flexible Google App Engine-Umgebung.

Cloud SQL einrichten

Cloud SQL-Instanz erstellen

Öffentliche IP-Adresse

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

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf Instanz erstellen.
  3. Klicken Sie auf MySQL auswählen.
  4. Achten Sie darauf, dass Enterprise Plus als Cloud SQL-Version für Ihre Instanz ausgewählt ist.
  5. Geben Sie im Feld Instanz-ID den Wert quickstart-instance ein.
  6. Geben Sie im Feld Passwort ein Passwort für den Postgres-Nutzer ein. Speichern Sie dieses Passwort zur späteren Verwendung.
  7. Wählen Sie im Abschnitt Region und zonale Verfügbarkeit auswählen die Option Einzelne Zone aus.
  8. Klicken Sie auf das Menü Konfigurationsoptionen einblenden.
  9. Maximieren Sie den Knoten Maschinenkonfiguration.
  10. Wählen Sie im Bereich Maschinenformen die Form 4 vCPUs, 32 GB aus.
  11. Klicken Sie auf Instanz erstellen und warten Sie, bis die Instanz initialisiert und gestartet wurde.

Bevor Sie den Befehl ausführen, ersetzen Sie DB_ROOT_PASSWORD durch das Passwort Ihres Datenbanknutzers.

Ändern Sie optional die Werte für die folgenden Parameter:

  • --database_version: der Typ und die Version des Datenbankmoduls. Falls nicht angegeben, wird der API-Standard verwendet. Die derzeit verfügbaren Versionen finden Sie in der Dokumentation zu gcloud-Datenbankversionen.
  • --cpu: die Anzahl der in der Maschine gewünschten Kerne.
  • --memory: ganzzahliger Wert, der angibt, wie viel Arbeitsspeicher in der Maschine gewünscht ist. Es sollte eine Größeneinheit angegeben werden (z. B. 3.072 MB oder 9 GB). Wenn keine Einheiten angegeben sind, wird von GB ausgegangen.
  • --region: regionaler Standort der Instanz, z. B. asia-east1, us-east1. Falls nicht angegeben, wird standardmäßig us-central verwendet.

Führen Sie den Befehl gcloud sql instances create aus, um eine Cloud SQL-Instanz zu erstellen.

 gcloud sql instances create quickstart-instance \
--database-version=MYSQL_8_0 \
--cpu=1 \
--memory=4GB \
--region=us-central1 \
--root-password=DB_ROOT_PASSWORD

IP-Adressbereich zuweisen und eine private Verbindung erstellen, um den Zugriff auf private Dienste für Cloud SQL zu konfigurieren

  1. Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.

    Zur Seite VPC-Netzwerke

  2. Wählen Sie das VPC-Netzwerk default aus.
  3. Wählen Sie den Tab Private Dienstverbindung aus.
  4. Wählen Sie den Tab Diensten zugewiesene IP-Bereiche aus.
  5. Klicken Sie auf IP-Bereich zuweisen.
  6. Geben Sie als Name für den zugewiesenen Bereich google-managed-services-default an.
  7. Wählen Sie die Option Automatisch für den IP-Bereich aus und geben Sie die Präfixlänge als 16 an.
  8. Klicken Sie auf Zuweisen, um den zugewiesenen Bereich zu erstellen.
  9. Wählen Sie den Tab Private Verbindungen zu Diensten für das VPC-Netzwerk default aus.
  10. Klicken Sie auf Verbindung erstellen, um eine private Verbindung zwischen Ihrem Netzwerk und einem Dienstersteller herzustellen.
  11. Wählen Sie für Zugewiesene Zuordnung die Option google-managed-services-default aus.
  12. Klicken Sie auf Verbinden, um die Verbindung zu erstellen.

Instanz mit aktivierter privater IP-Adresse und SSL erstellen

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

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf Instanz erstellen.
  3. Klicken Sie auf MySQL auswählen.
  4. Achten Sie darauf, dass Enterprise Plus als Cloud SQL-Version für Ihre Instanz ausgewählt ist.
  5. Geben Sie im Feld Instanz-ID den Wert quickstart-instance ein.
  6. Geben Sie im Feld Passwort ein Passwort für den Postgres-Nutzer ein. Speichern Sie dieses Passwort zur späteren Verwendung.
  7. Wählen Sie im Abschnitt Region und zonale Verfügbarkeit auswählen die Option Einzelne Zone aus.
  8. Klicken Sie auf das Menü Konfigurationsoptionen einblenden.
  9. Maximieren Sie den Knoten Maschinenkonfiguration.
  10. Wählen Sie im Bereich Maschinenformen die Form 4 vCPUs, 32 GB aus.
  11. Maximieren Sie den Knoten Verbindungen.
  12. Entfernen Sie das Häkchen aus dem Kästchen Öffentliche IP-Adressen, um nur eine Instanz mit einer privaten IP-Adresse zu erstellen.
  13. Klicken Sie auf das Kästchen Private IP-Adresse.
  14. Wählen Sie im Menü Netzwerk die Option Standard aus.
  15. Klicken Sie auf Instanz erstellen und warten Sie, bis die Instanz initialisiert und gestartet wurde.
  16. Klicken Sie auf Verbindungen.
  17. Wählen Sie im Abschnitt Sicherheit die Option Nur SSL-Verbindungen zulassen aus, um SSL-Verbindungen zu aktivieren.
  18. Klicken Sie im Dialogfeld SSL aktivieren auf Aktivieren und neu starten und warten Sie, bis die Instanz neu gestartet wurde.

IP-Adressbereich zuweisen und eine private Verbindung erstellen, um den Zugriff auf private Dienste für Cloud SQL zu konfigurieren

  1. Führen Sie den Befehl gcloud compute addresses create aus, um einen IP-Adressbereich zuzuweisen.

    gcloud compute addresses create google-managed-services-default \
    --global --purpose=VPC_PEERING --prefix-length=16 \
    --description="peering range for Google" --network=default
  2. Führen Sie den Befehl gcloud services vpc-peerings connect aus, um eine private Verbindung zum zugewiesenen IP-Adressbereich zu erstellen. Ersetzen Sie YOUR_PROJECT_ID durch die Projekt-ID Ihres Projekts.

    gcloud services vpc-peerings connect --service=servicenetworking.googleapis.com \
    --ranges=google-managed-services-default --network=default \
    --project=YOUR_PROJECT_ID

Instanz mit aktivierter privater IP-Adresse und SSL erstellen

  1. Bevor Sie den folgenden Befehl ausführen, ersetzen Sie DB_ROOT_PASSWORD durch das Passwort Ihres Datenbanknutzers.

  2. Ändern Sie optional die Werte für die folgenden Parameter:

    • --database_version: der Typ und die Version des Datenbankmoduls. Falls nicht angegeben, wird der API-Standard verwendet. Die derzeit verfügbaren Versionen finden Sie in der Dokumentation zu gcloud-Datenbankversionen.
    • --cpu: Die Anzahl der Kerne in der Maschine.
    • --memory: Ein ganzzahliger Wert, der angibt, wie viel Arbeitsspeicher in die Maschine eingebaut werden soll. Es kann eine Größeneinheit angegeben werden (z. B. 3072 MB oder 9 GB). Wenn keine Einheiten angegeben sind, wird von GB ausgegangen.
    • --region: Der regionale Standort der Instanz, z. B. asia-east1, us-east1. Falls nicht angegeben, wird standardmäßig us-central1 verwendet. Eine vollständige Liste der Regionen finden Sie in diesem Artikel.

    Führen Sie den Befehl gcloud sql instances create aus, um eine Cloud SQL-Instanz mit einer privaten IP-Adresse zu erstellen.

     gcloud sql instances create quickstart-instance \
    --database-version=MYSQL_8_0 \
    --cpu=1 \
    --memory=4GB \
    --region=us-central1 \
    --root-password=DB_ROOT_PASSWORD \
    --no-assign-ip \
    --network=default
  3. Führen Sie den Befehl gcloud sql instances patch aus, um nur SSL-Verbindungen für die Instanz zuzulassen.

  4. gcloud sql instances patch quickstart-instance --require-ssl

Datenbank erstellen

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

    Cloud SQL-Instanzen aufrufen

  2. Wählen Sie quickstart-instance aus.
  3. Wählen Sie im SQL-Navigationsmenü die Option Datenbanken aus.
  4. Klicken Sie auf Create database (Datenbank erstellen).
    1. Geben Sie im Feld Datenbankname des Dialogfelds Datenbank erstellen quickstart-db ein. Behalten Sie die Werte für den Zeichensatz und die Sortierung bei.
    2. Klicken Sie auf Erstellen.

Führen Sie den Befehl gcloud sql databases create aus, um eine Datenbank zu erstellen.

gcloud sql databases create quickstart-db --instance=quickstart-instance

Nutzer erstellen

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

    Cloud SQL-Instanzen aufrufen

  2. Wählen Sie die von Ihnen erstellte MySQL-Instanz quickstart-instance aus.
  3. Wählen Sie im SQL-Navigationsmenü die Option Nutzer aus.
  4. Klicken Sie auf Nutzerkonto hinzufügen.
  5. Geben Sie auf der Seite Nutzerkonto zur Instanz quickstart-instance hinzufügen die folgenden Informationen ein:
    1. Geben Sie im Feld Nutzername quickstart-user ein.
    2. Geben Sie im Feld Passwort ein Passwort für den Datenbanknutzer ein. Notieren Sie dieses Passwort zur Verwendung in einem späteren Schritt dieser Kurzanleitung.
  6. Klicken Sie auf Hinzufügen.

Bevor Sie den folgenden Befehl ausführen, ersetzen Sie die folgenden Werte:

  1. PASSWORD durch ein Passwort für Ihren Datenbanknutzer. Notieren Sie dies zur Verwendung in einem späteren Schritt dieser Kurzanleitung.

Führen Sie den Befehl gcloud sql users create aus, um den Nutzer zu erstellen.

gcloud sql users create quickstart-user \
--instance=quickstart-instance \
--password=PASSWORD

Für Cloud SQL gelten dieselben Längenbeschränkungen für Nutzernamen wie für lokales MySQL; 32 Zeichen für MySQL 8.0 und höher, 16 Zeichen für frühere Versionen.

Beispielanwendung in der flexiblen App Engine-Umgebung bereitstellen

App Engine-Anwendung erstellen

Erstellen Sie eine App Engine-Anwendung in Ihrem Google Cloud Projekt. Dadurch wird der App Engine-Dienst aktiviert und eine App Engine-Standardanwendung sowie ein App Engine-Dienstkonto erstellt, das Sie für das Herstellen einer Verbindung zu Cloud SQL verwenden.
  1. Rufen Sie in der Google Cloud Console die Seite App Engine auf.

    Zu App Engine

  2. Klicken Sie auf Anwendung erstellen.
  3. Wählen Sie im Drop-down-Menü Region auswählen die Option us-central aus.
  4. Klicken Sie auf Weiter.
  5. Wenn die Seite Erste Schritte angezeigt wird, scrollen Sie nach unten.
  6. Klicken Sie auf den Link Ich führe diesen Schritt später aus.
  1. Führen Sie den folgenden gcloud app create-Befehl aus, um eine App Engine-Anwendung zu erstellen:
  2. gcloud app create
  3. Wenn Sie zur Auswahl der Region aufgefordert werden, in der sich Ihre App Engine-Anwendung befinden soll, geben Sie die numerische Option für us-central ein.

App Engine-Dienstkonto konfigurieren

Konfigurieren Sie das von App Engine verwendete Dienstkonto so, dass es die Rolle Cloud SQL-Client hat. Durch Zuweisen der Rolle zum Dienstkonto erhält es Berechtigungen zum Herstellen einer Verbindung zu Cloud SQL.
  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    IAM aufrufen

  2. Klicken Sie für das Dienstkonto App Engine-Standarddienstkonto auf das Stiftsymbol.
  3. Klicken Sie auf Weitere Rolle hinzufügen.
  4. Fügen Sie die Rolle namens Cloud SQL-Client hinzu.
  5. Klicken Sie auf Speichern.
  1. Führen Sie den folgenden gcloud-Befehl aus, um eine Liste der Dienstkonten Ihres Projekts abzurufen:
    gcloud iam service-accounts list
  2. Kopieren Sie die E-MAIL-ADRESSE des App Engine-Dienstkontos.
  3. Führen Sie den folgenden Befehl aus, um dem App Engine-Dienstkonto die Rolle Cloud SQL-Client hinzuzufügen:
    gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/cloudsql.client"

Beispielanwendung für Cloud SQL konfigurieren und bereitstellen

Nachdem Sie eine Cloud SQL-Instanz und -Datenbank erstellt und dem App Engine-Dienstkonto Berechtigungen zum Herstellen einer Verbindung zu Cloud SQL zugewiesen haben, können Sie eine Beispielanwendung so konfigurieren und bereitstellen, dass eine Verbindung zu Ihrer Cloud SQL-Instanz hergestellt wird.

Öffentliche IP-Adresse

Für öffentliche IP-Pfade bietet die flexible App Engine-Umgebung die Möglichkeit der Verschlüsselung. Diese Methode nutzt einen Unix-Socket und den Cloud SQL-Auth-Proxy, um eine Verbindung zu Ihrer Cloud SQL-Instanz herzustellen.
  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.

    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialogfeld In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  6. Öffnen Sie die Datei cloudshell_open/golang-samples/cloudsql/mysql/database-sql/app.flexible.yaml.
  7. Ersetzen Sie die Platzhalter für die Umgebungsvariablen in der Datei app.flexible.yaml durch die folgenden Werte:
    • <PROJECT-ID> durch Ihre Projekt-ID.
    • <INSTANCE-REGION> durch us-central1.
    • <INSTANCE-NAME> mit quickstart-instance.
    • <YOUR_DB_USER_NAME> durch quickstart-user.
    • <YOUR_DB_PASSWORD> durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • <YOUR_DB_NAME> durch quickstart-db.
  8. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/golang-samples/cloudsql/mysql/database-sql den folgenden gcloud app deploy-Befehl aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  9. gcloud app deploy app.flexible.yaml
  10. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  11. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  12. gcloud app browse
  13. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  14. Screenshot: Bereitgestellte Beispielanwendung ansehen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.

    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialogfeld In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  6. Öffnen Sie die Datei cloudshell_open/java-docs-samples/cloud-sql/mysql/servlet/src/main/webapp/WEB-INF/appengine-web.xml.
  7. Ersetzen Sie die Platzhalter für die Umgebungsvariablen in der Datei appengine-web.xml durch die folgenden Werte:
    • my-project:region:instance durch den Verbindungsnamen Ihrer Instanz, der auf der Seite Cloud SQL-Instanzen in der Google Cloud Console angezeigt wird.
    • my-db-user durch quickstart-user.
    • my-db-password durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • my_db durch quickstart-db.
  8. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/java-docs-samples/cloud-sql/mysql/servlet den folgenden Apache Maven-Befehl mvn clean package aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  9. mvn clean package appengine:deploy -DskipTests
  10. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  11. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  12. gcloud app browse
  13. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  14. Screenshot: Bereitgestellte Beispielanwendung ansehen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.

    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialogfeld In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  6. Öffnen Sie die Datei cloudshell_open/nodejs-docs-samples/cloud-sql/mysql/mysql/app.flexible.yaml.
  7. Ersetzen Sie die Platzhalter für die Umgebungsvariablen in der Datei app.flexible.yaml durch die folgenden Werte:
    • <MY-PROJECT> durch Ihre Projekt-ID.
    • <INSTANCE-REGION> durch us-central1.
    • <INSTANCE-NAME> mit quickstart-instance.
    • MY_DB_USER durch quickstart-user.
    • MY_DB_PASSWORD durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • MY_DATABASE durch quickstart-db.
  8. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/nodejs-docs-samples/cloud-sql/mysql/mysql den folgenden gcloud app deploy-Befehl aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  9. gcloud app deploy app.flexible.yaml
  10. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  11. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  12. gcloud app browse
  13. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  14. Screenshot: Bereitgestellte Beispielanwendung ansehen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.

    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialogfeld In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  6. Öffnen Sie die Datei cloudshell_open/python-docs-samples/cloud-sql/mysql/sqlalchemy/app.flexible.yaml.
  7. Ersetzen Sie die Platzhalter für die Umgebungsvariablen in der Datei app.flexible.yaml durch die folgenden Werte:
    • <PROJECT-ID> durch Ihre Projekt-ID.
    • <INSTANCE-REGION> durch quickstart-instance.
    • <YOUR_DB_USER_NAME> durch quickstart-user.
    • <YOUR_DB_PASSWORD> durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • <YOUR_DB_NAME> durch quickstart-db.
  8. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/python-docs-samples/cloud-sql/mysql/sqlalchemy den folgenden gcloud app deploy-Befehl aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  9. gcloud app deploy app.flexible.yaml
  10. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  11. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  12. gcloud app browse
  13. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  14. Screenshot: Bereitgestellte Beispielanwendung ansehen

Bei privaten IP-Pfaden müssen die VM der flexiblen App Engine-Umgebung und die Cloud SQL-Instanz im selben VPC-Netzwerk (Virtual Private Cloud) gehostet werden. Wenn sich die App der flexiblen App Engine-Umgebung im selben VPC-Netzwerk befindet, kann sie ohne den Cloud SQL Auth-Proxy eine direkte Verbindung zur Cloud SQL-Instanz herstellen.

SSL-Server- und Clientzertifikate erstellen und herunterladen

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

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf quickstart-instance, um die Übersichtsseite aufzurufen.
  3. Klicken Sie auf den Tab Verbindungen.
  4. Klicken Sie im Abschnitt Sicherheit auf Clientzertifikat erstellen.
  5. Geben Sie im Dialogfeld Clientzertifikat erstellen als Namen quickstart-key ein und klicken Sie auf Erstellen.
  6. Klicken Sie im Dialogfeld Neues SSL-Zertifikat erstellt auf den jeweiligen Link zum Herunterladen, um die Zertifikate herunterzuladen. Klicken Sie dann auf Schließen.

Beispielanwendung mit SSL-Zertifikaten erstellen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.

    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialog In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Laden Sie SSL-Zertifikatsdateien in den Ordner Zertifikate hoch.
    1. Gehen Sie im Explorer-Navigationsmenü des Cloud Shell-Editors zum Ordner golang-samples/cloudsql/mysql/database-sql/certs.
    2. Klicken Sie im Cloud Shell-Editor mit der rechten Maustaste auf den Ordner Zertifikate und wählen Sie Dateien hochladen aus.
    3. Wählen Sie auf Ihrem lokalen Computer folgende Dateien aus:
      • client-key.pem
      • client-cert.pem
      • server-ca.pem
    4. Klicken Sie bei drei ausgewählten SSL-Zertifikatsdateien auf Öffnen, um das Hochladen der Dateien in den Cloud Shell-Editor abzuschließen.
  6. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  7. Öffnen Sie die Datei cloudshell_open/golang-samples/cloudsql/mysql/database-sql/app.flexible.yaml.
  8. Kopieren Sie den folgenden Code und fügen Sie ihn in die Datei ein. Ersetzen Sie dabei den vorhandenen Dateiinhalt:
  9. runtime: custom
    env: flex
    
    env_variables:
      DB_USER: quickstart-user
      DB_PASS: YOUR_DB_PASSWORD
      DB_NAME: quickstart-db
      DB_PORT: 3306
      INSTANCE_HOST: INSTANCE_HOST
      DB_ROOT_CERT: certs/server-ca.pem
      DB_CERT: certs/client-cert.pem
      DB_KEY: certs/client-key.pem
      PRIVATE_IP: TRUE
    
    vpc_access_connector:
      name: projects/PROJECT_ID/locations/us-central1/connectors/quickstart-connector
  10. Ersetzen Sie die folgenden Variablen:
    • YOUR_DB_PASSWORD durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • INSTANCE_HOST durch die private IP-Adresse Ihrer Instanz, die auf der Seite Cloud SQL-Instanzen in der Google Cloud Console angezeigt wird.
    • PROJECT_ID durch Ihre Projekt-ID.
  11. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/golang-samples/cloudsql/mysql/database-sql den folgenden gcloud app deploy-Befehl aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  12. gcloud app deploy app.flexible.yaml
  13. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  14. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  15. gcloud app browse
  16. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  17. Screenshot: Bereitgestellte Beispielanwendung ansehen

SSL-Server- und Clientzertifikate erstellen und herunterladen

Für Java-Nutzer stellt der Connector bereits eine sichere Verbindung bereit, sodass das Erstellen und Herunterladen von SSL-Server- und Clientzertifikaten nicht erforderlich ist.

Beispielanwendung erstellen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.
    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialog In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  6. Öffnen Sie die Datei cloudshell_open/java-docs-samples/cloud-sql/mysql/servlet/src/main/webapp/WEB-INF/appengine-web.xml.
  7. Kopieren Sie den folgenden Code und fügen Sie ihn in die Datei appengine-web.xml ein. Ersetzen Sie dabei den vorhandenen Dateiinhalt:
  8. <runtime>java17</runtime>
      <env-variables>
        <env-var name="INSTANCE_CONNECTION_NAME" value="project-name:region-name:instance-name" />
        <env-var name="DB_PORT" value="3306" />
        <env-var name="DB_USER" value="quickstart-user" />
        <env-var name="DB_PASS" value="my-db-password" />
        <env-var name="DB_NAME" value="quickstart-db" />
      </env-variables>
    <vpc-access-connector>
      <name>projects/PROJECT_ID/locations/us-central1/connectors/quickstart-connector</name>
      <egress-setting>all-traffic</egress-setting>
    </vpc-access-connector>
  9. Ersetzen Sie die folgenden Variablen:
    • project-name:region-name:instance-name durch den Verbindungsnamen Ihrer Instanz, der auf der Seite Cloud SQL-Instanzen in der Google Cloud Console angezeigt wird.
    • my-db-password durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • PROJECT_ID durch Ihre Projekt-ID.
  10. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/java-docs-samples/cloud-sql/mysql/servlet den folgenden Apache Maven-Befehl mvn clean package aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  11. mvn clean package appengine:deploy -DskipTests
  12. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  13. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  14. gcloud app browse
  15. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  16. Screenshot: Bereitgestellte Beispielanwendung ansehen

SSL-Server- und Clientzertifikate erstellen und herunterladen

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

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf quickstart-instance, um die Übersichtsseite aufzurufen.
  3. Klicken Sie auf den Tab Verbindungen.
  4. Klicken Sie im Abschnitt Sicherheit auf Clientzertifikat erstellen.
  5. Geben Sie im Dialogfeld Clientzertifikat erstellen als Namen quickstart-key ein und klicken Sie auf Erstellen.
  6. Klicken Sie im Dialogfeld Neues SSL-Zertifikat erstellt auf den jeweiligen Link zum Herunterladen, um die Zertifikate herunterzuladen. Klicken Sie dann auf Schließen.

Beispielanwendung mit SSL-Zertifikaten erstellen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.
    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialog In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Laden Sie SSL-Zertifikatsdateien in den Ordner Zertifikate hoch.
    1. Gehen Sie im Explorer-Navigationsmenü des Cloud Shell-Editors zum Ordner nodejs-docs-samples/cloud-sql/mysql/mysql/certs.
    2. Klicken Sie im Cloud Shell-Editor mit der rechten Maustaste auf den Ordner Zertifikate und wählen Sie Dateien hochladen aus.
    3. Wählen Sie auf Ihrem lokalen Computer folgende Dateien aus:
      • client-key.pem
      • client-cert.pem
      • server-ca.pem
    4. Klicken Sie bei drei ausgewählten SSL-Zertifikatsdateien auf Öffnen, um das Hochladen der Dateien in den Cloud Shell-Editor abzuschließen.
  6. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  7. Öffnen Sie die Datei cloudshell_open/nodejs-docs-samples/cloud-sql/mysql/mysql/app.flexible.yaml.
  8. Kopieren Sie den folgenden Code und fügen Sie ihn in die Datei ein. Ersetzen Sie dabei den vorhandenen Dateiinhalt:
  9. runtime: nodejs
    env: flex
    
    env_variables:
      DB_USER: quickstart-user
      DB_PASS: MY_DB_PASSWORD
      DB_NAME: quickstart-db
      DB_PORT: 3306
      INSTANCE_HOST: INSTANCE_HOST
      DB_ROOT_CERT: certs/server-ca.pem
      DB_CERT: certs/client-cert.pem
      DB_KEY: certs/client-key.pem
      PRIVATE_IP: TRUE
    
    vpc_access_connector:
      name: projects/PROJECT_ID/locations/us-central1/connectors/quickstart-connector
  10. Ersetzen Sie die folgenden Variablen:
    • MY_DB_PASSWORD durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • INSTANCE_HOST durch die private IP-Adresse Ihrer Instanz, die auf der Seite Cloud SQL-Instanzen in der Google Cloud Console angezeigt wird.
    • PROJECT_ID durch Ihre Projekt-ID.
  11. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/nodejs-docs-samples/cloud-sql/mysql/mysql den folgenden gcloud app deploy-Befehl aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  12. gcloud app deploy app.flexible.yaml
  13. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  14. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  15. gcloud app browse
  16. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  17. Screenshot: Bereitgestellte Beispielanwendung ansehen

SSL-Server- und Clientzertifikate erstellen und herunterladen

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

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf quickstart-instance, um die Übersichtsseite aufzurufen.
  3. Klicken Sie auf den Tab Verbindungen.
  4. Klicken Sie im Abschnitt Sicherheit auf Clientzertifikat erstellen.
  5. Geben Sie im Dialogfeld Clientzertifikat erstellen als Namen quickstart-key ein und klicken Sie auf Erstellen.
  6. Klicken Sie im Dialogfeld Neues SSL-Zertifikat erstellt auf den jeweiligen Link zum Herunterladen, um die Zertifikate herunterzuladen. Klicken Sie dann auf Schließen.

Beispielanwendung mit SSL-Zertifikaten erstellen

  1. Öffnen Sie im Cloud Shell-Editor den Quellcode der Beispielanwendung.
    Cloud Shell-Editor öffnen
  2. Klicken Sie im Dialog In Cloud Shell öffnen auf Bestätigen, um den Beispielanwendungscode herunterzuladen und das Beispielanwendungsverzeichnis im Cloud Shell-Editor zu öffnen.
  3. Führen Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl aus, um Ihr Projekt zu aktivieren:
    gcloud config set project YOUR-PROJECT-ID
  4. Wenn das Dialogfeld Cloud Shell autorisieren angezeigt wird, klicken Sie auf Autorisieren.
  5. Laden Sie SSL-Zertifikatsdateien in den Ordner Zertifikate hoch.
    1. Gehen Sie im Explorer-Navigationsmenü des Cloud Shell-Editors zum Ordner python-docs-samples/cloud-sql/mysql/sqlalchemy/certs.
    2. Klicken Sie im Cloud Shell-Editor mit der rechten Maustaste auf den Ordner Zertifikate und wählen Sie Dateien hochladen aus.
    3. Wählen Sie auf Ihrem lokalen Computer folgende Dateien aus:
      • client-key.pem
      • client-cert.pem
      • server-ca.pem
    4. Klicken Sie bei drei ausgewählten SSL-Zertifikatsdateien auf Öffnen, um das Hochladen der Dateien in den Cloud Shell-Editor abzuschließen.
  6. Klicken Sie im Navigationsmenü Explorer des Cloud Shell-Editors auf den erweiterbaren Knoten, der als Nutzername Ihres Google Cloud -Kontos dient.
  7. Öffnen Sie die Datei cloudshell_open/python-docs-samples/cloud-sql/mysql/sqlalchemy/app.flexible.yaml.
  8. Kopieren Sie den folgenden Code und fügen Sie ihn in die Datei ein. Ersetzen Sie dabei den vorhandenen Dateiinhalt:
  9. runtime: custom
    env: flex
    entrypoint: gunicorn -b :$PORT app:app
    
    env_variables:
      DB_USER: quickstart-user
      DB_PASS: YOUR_DB_PASSWORD
      DB_NAME: quickstart-db
      DB_PORT: 3306
      INSTANCE_HOST: INSTANCE_HOST
      DB_ROOT_CERT: certs/server-ca.pem
      DB_CERT: certs/client-cert.pem
      DB_KEY: certs/client-key.pem
      PRIVATE_IP: TRUE
    
    vpc_access_connector:
      name: projects/PROJECT_ID/locations/us-central1/connectors/quickstart-connector
  10. Ersetzen Sie die folgenden Variablen:
    • YOUR_DB_PASSWORD durch das Passwort des quickstart-user, den Sie unter Nutzer erstellen erstellt haben.
    • INSTANCE_HOST durch die private IP-Adresse Ihrer Instanz, die auf der Seite Cloud SQL-Instanzen in der Google Cloud Console angezeigt wird.
    • PROJECT_ID durch Ihre Projekt-ID.
  11. Führen Sie an der Cloud Shell-Eingabeaufforderung im Verzeichnis cloudshell_open/python-docs-samples/cloud-sql/mysql/sqlalchemy den folgenden gcloud app deploy-Befehl aus, um die Beispielanwendung in der flexiblen App Engine-Umgebung bereitzustellen.
  12. gcloud app deploy app.flexible.yaml
  13. Wenn die Frage Möchten Sie fortfahren? angezeigt wird, geben Sie Y ein.
  14. Führen Sie nach Abschluss der Aktionen mit dem Befehl gcloud app deploy den Befehl gcloud app browse aus:
  15. gcloud app browse
  16. Klicken Sie auf den generierten Link, um die Beispielanwendung in der flexiblen App Engine-Umgebung aufzurufen. Diese Umgebung ist mit Cloud SQL verbunden.
  17. Screenshot: Bereitgestellte Beispielanwendung ansehen

Bereinigen

Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud -Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

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

    Cloud SQL-Instanzen aufrufen

  2. Wählen Sie die Instanz quickstart-instance aus, um die Seite Instanzendetails zu öffnen.
  3. Klicken Sie oben auf der Seite in der Symbolleiste auf Löschen.
  4. Geben Sie im Dialogfeld Instanz löschen quickstart-instance ein und klicken Sie dann auf Löschen, um die Instanz zu löschen. Mit der Deaktivierung der Anwendung können Sie keine Instanzen mehr ausführen und keine Anfragen mehr verarbeiten. Wenn Ihre Anwendung eine Anfrage verarbeitet, schließt sie die Anfrage ab, bevor sie deaktiviert wird.

So deaktivieren Sie eine App Engine-Anwendung und behalten Sie ihre Daten bei:

  1. Öffnen Sie in der Google Cloud Console die Seite Einstellungen:

    Einstellungen aufrufen

  2. Klicken Sie im Tab Anwendungseinstellungen auf Anwendung deaktivieren.

  3. Geben Sie im Feld App-ID die ID der App ein, die Sie deaktivieren möchten, und klicken Sie dann auf Deaktivieren.

Optionale Bereinigungsschritte

Wenn Sie nicht die Rolle Cloud SQL-Client verwenden, die Sie dem Compute Engine-Dienstkonto zugewiesen haben, können Sie sie entfernen.

  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    IAM aufrufen

  2. Klicken Sie auf das Stiftsymbol für das IAM-Konto Compute Engine-Standarddienstkonto.
  3. Löschen Sie die Rolle Cloud SQL-Client.
  4. Klicken Sie auf Speichern.

Wenn Sie die APIs, die im Rahmen dieser Kurzanleitung aktiviert wurden, nicht verwenden, können Sie sie deaktivieren.

  • APIs, die in dieser Kurzanleitung aktiviert wurden:
    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
  1. Öffnen Sie in der Google Cloud Console die Seite APIs.

    Zu „APIs“

  2. Wählen Sie eine API aus, die Sie deaktivieren möchten, und klicken Sie dann auf die Schaltfläche API deaktivieren.

Nächste Schritte

Je nach Bedarf können Sie sich eingehender über das Erstellen von Cloud SQL-Instanzen informieren.

Informationen zum Anlegen von MySQL-Nutzern und -Datenbanken für Ihre Cloud SQL-Instanz erhalten Sie unter MySQL-Nutzer erstellen und verwalten und MySQL-Datenbanken erstellen und verwalten.

Weitere Informationen zu Preisen finden Sie unter Preise für Cloud SQL for MySQL.

Mehr zu folgenden Themen:

Außerdem erfahren Sie, wie Sie von anderen Google Cloud-Anwendungen aus eine Verbindung zu einer Cloud SQL-Instanz herstellen können: