Verbindung über einen MySQL-Client herstellen

Sie können den MySQL-Befehlszeilenclient verwenden, um eine Verbindung zu Cloud SQL herzustellen. Auf dieser Seite wird beschrieben, wie Sie einen mysql-Client mit Ihrer Cloud SQL-Instanz verbinden, und zwar auf einem lokalen Client, auf einer Compute Engine-VM oder in Cloud Shell.

Hinweise

Führen Sie die folgenden Schritte aus, bevor Sie einen mysql-Client verwenden, um eine Verbindung zu Ihrer Cloud SQL-Instanz herzustellen:

MySQL-Client auf einem lokalen Computer oder einer Compute Engine-VM verwenden

Das Herstellen einer Verbindung zu Ihrer Cloud SQL-Instanz mithilfe eines mysql-Clients umfasst drei grundlegende Aufgaben:

  1. Client installieren.
  2. Zugriff auf Ihre Cloud SQL-Instanz konfigurieren.
  3. Verbindung zur Cloud SQL-Instanz herstellen.

Client installieren

So installieren Sie den mysql-Client:

  1. Laden Sie MySQL Community Server für Ihre Plattform von der Downloadseite für MySQL Community Server herunter.
    Community Server enthält auch den MySQL-Client.
  2. Installieren Sie Community Server nach den Anweisungen auf der Downloadseite.

Weitere Informationen zur MySQL-Installation finden Sie unter MySQL installieren und aktualisieren.

Zugriff auf Ihre Cloud SQL-Instanz konfigurieren

So konfigurieren Sie den Zugriff auf Ihre Instanz:

  1. Rufen Sie auf dem Clientcomputer oder der Compute Engine-VM-Instanz Wie lautet meine IP auf, um die IP-Adresse des Clientcomputers anzuzeigen.
  2. Kopieren Sie diese IP-Adresse.
  3. Öffnen Sie in der Google Cloud Console die Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  4. Klicken Sie auf den Instanznamen, um die Seite Übersicht einer Instanz zu öffnen.
  5. Wählen Sie im SQL-Navigationsmenü die Option Verbindung aus.
  6. Wählen Sie den Tab Netzwerk aus.
  7. Klicken Sie im Abschnitt Autorisierte Netzwerke auf Netzwerk hinzufügen und geben Sie die IP-Adresse des Computers an, auf dem der Client installiert ist.
  8. Klicken Sie auf Fertig. Klicken Sie dann am Seitenende auf Speichern , um die Änderungen zu speichern.
  9. Stellen Sie eine Verbindung zur Instanz entweder über SSL/TLS oder ohne Verschlüsselung (ohne SSL/TLS) her.

Unverschlüsselte Verbindung zu Ihrer Cloud SQL-Instanz herstellen

Damit eine Verbindung ohne Verschlüsselung hergestellt werden kann, muss für die Instanz der SSL-Modus auf ALLOW_UNENCRYPTED_AND_ENCRYPTEDfestgelegt sein. In der Google Cloud Console lautet die entsprechende Konfiguration Unverschlüsselten Netzwerkverkehr zulassen.

Weitere Informationen zur SSL/TLS-Konfiguration Ihrer Instanz finden Sie unter SSL/TLS-Zertifikate konfigurieren.

So stellen Sie eine Verbindung zu Ihrer Instanz her:

  1. Prüfen Sie, ob Sie den Client installiert und den Zugriff auf Ihre Instanz konfiguriert haben.
  2. Starten Sie den mysql-Client:
    mysql --ssl-mode=DISABLED --host=INSTANCE_IP_ADDRESS --user=root --password
  3. Geben Sie Ihr Passwort ein.
  4. Die MySQL-Eingabeaufforderung wird angezeigt.

SSL/TLS-Verbindung zu Ihrer Cloud SQL-Instanz herstellen

So stellen Sie eine Verbindung zu Ihrer Instanz über SSL/TLS und die integrierte Authentifizierung her:

Prüfen Sie vor Beginn, ob Sie den Client installiert und den Zugriff auf Ihre Instanz konfiguriert haben.

  1. Starten Sie den mysql-Client:
    mysql --ssl-mode=REQUIRED \
       --host=INSTANCE_IP_ADDRESS \
       --user=root --password
  2. Geben Sie das Passwort ein.
  3. Geben Sie an der MySQL-Eingabeaufforderung den Befehl \s ein, um zu prüfen, ob eine SSL/TLS-Verbindung verwendet wird.
  4. Suchen Sie in der Ausgabe nach der Zeile, die mit SSL: beginnt.
    ...
    SSL:                     Cipher in use is DHE-RSA-AES256-SHA
    ...
    

    Informationen zur Fehlerbehebung bei Verbindungsproblemen finden Sie unter Verbindungsprobleme beheben.

SSL/TLS-Verbindung zu Ihrer Cloud SQL-Instanz mit Clientzertifikatprüfung herstellen

Wenn ssl_mode auf Ihrer Cloud SQL-Instanz für TRUSTED_CLIENT_CERTIFICATE_REQUIRED konfiguriert ist, müssen Sie bei der Anmeldung auch eine bestätigte Clientidentität angeben.

Für eine Verbindung über SSL/TLS-Zertifikate mit Clientüberprüfung ist Folgendes erforderlich:

  • Ein Public-Key-Zertifikat des Clients in einer client-cert.pem-Datei
  • Ein privater Clientschlüssel in einer client-key.pem-Datei

Geben Sie außerdem das Serverzertifikat server-ca.pem an, damit der Client die Identität des Servers für die gegenseitige Authentifizierung überprüfen kann.

So starten Sie beispielsweise den mysql-Client:
    mysql --ssl-mode=VERIFY_CA \
      --ssl-ca=server-ca.pem \
      --ssl-cert=client-cert.pem \
      --ssl-key=client-key.pem \
      --host=INSTANCE_IP_ADDRESS \
      --user=root --password
   

Wenn Sie kein Clientzertifikat und keinen entsprechenden privaten Schlüssel haben, erstellen Sie ein neues Clientzertifikat.

Client in Cloud Shell verwenden

So stellen Sie eine Verbindung zu einer Cloud SQL-Instanz her (nur öffentliche IP-Adresse):

  1. Öffnen Sie die Google Cloud Console.

    Öffnen Sie die Google Cloud Console

  2. Klicken Sie in der Symbolleiste rechts auf das Cloud Shell-Symbol .

    Die Cloud Shell-Initialisierung dauert einen Moment.

  3. Stellen Sie über die Cloud Shell-Eingabeaufforderung mit dem integrierten Client eine Verbindung zur Cloud SQL-Instanz her:
    gcloud sql connect INSTANCE_ID \
    --user=root
  4. Geben Sie Ihr Passwort ein.

Der Befehl gcloud sql connect unterstützt keine Verbindung zu einer Cloud SQL-Instanz über private IP-Adressen oder SSL/TLS. Zur Herstellung einer verschlüsselten Verbindung müssen Sie den Proxy in Cloud Shell installieren und verwenden:

  1. Installieren Sie den Proxy (Linux 64-Bit) im Verzeichnis /home/USER.
  2. Starten Sie den Proxy mithilfe der gcloud CLI-Authentifizierung:

    ./cloud-sql-proxy INSTANCE_CONNECTION_NAME &

  3. Stellen Sie über die TCP-Verbindung eine Verbindung zur Datenbank her:

    mysql -u USERNAME -p --host=127.0.0.1

Nächste Schritte