MySQL-Features nach Cloud SQL-Versionen
Weitere Informationen zu den Funktionen der Cloud SQL Enterprise Plus- und Cloud SQL Enterprise-Version von Cloud SQL for MySQL finden Sie unter Einführung in die Cloud SQL-Versionen.
Allgemeine MySQL-Features, die für Cloud SQL unterstützt werden
- Vollständig verwaltete MySQL Community Edition-Datenbanken in der Cloud.
- Instanzen sind in Nord- und Südamerika, der EU, Australien und Asien verfügbar. Hier finden Sie alle Standorte, an denen Sie Cloud SQL-Instanzen erstellen können.
- Unterstützt die Migration von Quelldatenbanken zu Cloud SQL-Zieldatenbanken mit dem Database Migration Service (DMS).
- Kundendaten werden in internen Netzwerken von Google sowie in Datenbanktabellen, temporären Dateien und Sicherungskopien verschlüsselt.
- Unterstützung sicherer externer Verbindungen mit dem Cloud SQL Auth-Proxy oder mit dem SSL/TLS-Protokoll.
- Unterstützung für private IP-Adresse (Zugriff auf private Dienste).
- Datenreplikation zwischen mehreren Zonen* mit automatischem Failover.
- Import und Export von Datenbanken mithilfe von
mysqldump
oder Import und Export von CSV-Dateien. - Unterstützung des MySQL Wire Protocol und der Standard-MySQL-Konnektoren.
- Automatische Sicherungen, Sicherungen nach Bedarf und Wiederherstellung zu einem bestimmten Zeitpunkt.
- Klonen von Instanzen.
- Einbindung in das Logging und Monitoring von Google Cloud Observability.
- ISO/IEC-27001-konform.
* Die Regionen Mexiko, Montreal und Osaka haben drei Zonen in einem oder zwei physischen Rechenzentren. In diesen Regionen wird derzeit auf mindestens drei physische Rechenzentren erweitert. Weitere Informationen finden Sie unter Cloudstandorte und SLAs für die Google Cloud Platform. Um die Zuverlässigkeit Ihrer Arbeitslasten zu verbessern, sollten Sie eine mehrere Regionen umfassende Bereitstellung in Betracht ziehen.
Für Cloud SQL for MySQL unterstützte Anwendungssprachen
Sie können Cloud SQL mit App Engine-Anwendungen verwenden, die in einer flexiblen Umgebung ausgeführt werden und geschrieben sind in:
- C#
- Go
- Java
- Node.js
- PHP
- Python
- Ruby
Außerdem können Sie Cloud SQL mit externen Anwendungen nutzen, die das MySQL-Standardprotokoll verwenden.
Verbindungen mit Cloud SQL-Instanzen für MySQL herstellen
Hierüber können Sie eine Verbindung zu einer Cloud SQL-Instanz herstellen:
- Einen
mysql
-Client - Drittanbietertools wie SQL Workbench oder Toad for MySQL
- Externe Anwendungen
- App Engine-Anwendungen
- Auf Compute Engine ausgeführten Anwendungen.
- Auf Google Kubernetes Engine ausgeführte Anwendungen
- Cloud Run-Funktionen
- Cloud Run
- Skripts für Google Apps Script
Die Verbindung zu Cloud SQL mit privatem Google-Zugriff wird nicht unterstützt. Der Zugriff auf private Dienste wird unterstützt. Weitere Informationen finden Sie unter Optionen für den privaten Zugriff.
Nutzerverwaltung in Cloud SQL for MySQL 8.0
Aufgrund von Änderungen in MySQL 8.0 können Sie CREATE
- oder DELETE
-Anweisungen für die MySQL-Nutzerverwaltung nicht verwenden. Außerdem können Sie Nutzerberechtigungen nicht mithilfe der Anweisungen INSERT
, UPDATE
oder DELETE
ändern. Verwenden Sie stattdessen die Anweisungen CREATE USER
, DROP USER
, GRANT
und REVOKE
, um die Nutzerberechtigungen zu ändern. Weitere Informationen finden Sie unter Account Management Notes.
Hinweis: Ignorieren Sie Informationen unter "Account management notes" zum Ausführen von mysql_upgrade
für ein Upgrade auf Version 8.0. Führen Sie stattdessen ein Upgrade anhand von MySQL-Upgrade für eine Instanz durchführen aus.
Unterschiede zwischen Standard-MySQL und Cloud SQL for MySQL
Im Allgemeinen entspricht der MySQL-Funktionsumfang, den eine Cloud SQL-Instanz bereitstellt, dem einer lokal gehosteten MySQL-Instanz. Es gibt jedoch einige Unterschiede zwischen einer Standard-MySQL-Instanz und einer Cloud SQL-Instanz.
Nicht unterstützte MySQL-Features für Cloud SQL
Das folgende Feature wird für Cloud SQL for MySQL 5.6 und 5.7 nicht unterstützt:
Die folgenden Features werden für Cloud SQL for MySQL 8.0 nicht unterstützt:
Das folgende Feature wird für Cloud SQL for MySQL 8.4 nicht unterstützt:
- Getaggte GTIDs Weitere Informationen zu getaggten GTIDs finden Sie in den MySQL 8.4-Releasenotes im Abschnitt In MySQL 8.4 hinzugefügte oder geänderte Features unter „MySQL-Replikation: getaggte GTIDs“.
Außerdem werden in Cloud SQL for MySQL die folgenden Berechtigungen nicht gewährt, die in MySQL 8.4 eingeführt wurden:
Nicht für Cloud SQL unterstützte MySQL-Plug-ins
- InnoDB-Memcached-Plugin
- X-Plug-in
- Klon-Plug-in
- Verschlüsselung inaktiver InnoDB-Daten
- validate_password-Komponente
Nicht für Cloud SQL unterstützte MySQL-Anweisungen
Die folgenden SQL-Anweisungen erzeugen einen Fehler mit der Nachricht Error 1290:
The MySQL server is running with the Google option so it cannot execute this
statement
:
LOAD DATA INFILE
SELECT ... INTO OUTFILE
SELECT ... INTO DUMPFILE
INSTALL PLUGIN ...
UNINSTALL PLUGIN
CREATE FUNCTION ... SONAME ...
Die folgenden Anweisungen werden nicht unterstützt, weil MySQL-Instanzen GTID-Replikation verwenden:
CREATE TABLE ... SELECT
-Anweisungen- Transaktionen oder Anweisungen, die sowohl transaktionale als auch nicht transaktionale Tabellen aktualisieren
Die folgende MySQL-Anweisung wird in Cloud SQL for MySQL 5.6 und 5.7 nicht unterstützt. In Cloud SQL for MySQL 8.0 wird sie jedoch unterstützt.
CREATE TEMPORARY TABLE
-Anweisungen innerhalb von Transaktionen
Weitere Informationen finden Sie in der MySQL-Dokumentation.
Nicht für Cloud SQL unterstützte MySQL-Funktionen
LOAD_FILE()
Nicht unterstützte Features des MySQL-Clientprogramms für Cloud SQL
mysqldump
mit der Option--tab
oder Optionen, die mit--tab
verwendet werden. Der Grund hierfür ist, dass die Berechtigung FILE nicht an Instanznutzer vergeben wird. Alle anderenmysqldump
-Optionen werden unterstützt. Informationen zur Verwendung dermysqldump
-Optionen, die Ihre Datei für den Import in Cloud SQL optimieren, finden Sie unter Von lokalem MySQL-Server mit mysqldump exportieren.mysqlimport
ohne die Option--local
. Dies liegt an der BeschränkungLOAD DATA INFILE
. Informationen zum Importieren von Daten in Ihre Cloud SQL-Instanz finden Sie unter Mithilfe einer Dumpdatei importieren oder Mithilfe einer CSV-Datei importieren.Wenn Sie Datenbanken mit Binärdaten in Ihre Cloud SQL for MySQL-Instanz importieren möchten, müssen Sie die Option
--hex-blob
mitmysqldump
verwenden.Wenn Sie eine lokale MySQL-Serverinstanz und den
mysql
-Client verwenden, isthex-blob
kein erforderliches Flag. Es ist jedoch erforderlich, wenn Sie beliebige Datenbanken mit Binärdaten in Ihre Cloud SQL-Instanz importieren möchten. Informationen zum Importieren von Daten in Ihre Cloud SQL-Instanz finden Sie unter Mithilfe einer Dumpdatei importieren oder Mithilfe einer CSV-Datei importieren.Nicht alle MySQL-Optionen und -Parameter können als Cloud SQL-Flags bearbeitet werden.
Das Hinzufügen eines konfigurierbaren Cloud SQL-Flags können Sie über die Cloud SQL-Diskussionsgruppe anfordern.
InnoDB ist die einzige unterstützte Speicher-Engine. Informationen zum Konvertieren von Tabellen von MyISAM zu InnoDB finden Sie in der MySQL-Dokumentation im Artikel Tabelle in InnoDB konvertieren.
Voreingestellte MySQL-Optionen für Cloud SQL
Über Cloud SQL wird MySQL mit einem bestimmten Satz von Optionen ausgeführt. Wenn sich eine Option möglicherweise auf die Funktionsweise Ihrer Anwendungen auswirkt, erhalten Sie hier einen entsprechenden Hinweis.
skip-name-resolve
Dieses Flag hat Einfluss darauf, wie Hostnamen für Clientverbindungen aufgelöst werden. Weitere Informationen finden Sie in der MySQL-Dokumentation unter skip-name-resolve
.
log_bin
Dieses Flag gibt an, ob das binäre Logging aktiviert ist. Wenn die Option --log-bin
verwendet wird, lautet der Wert dieser Variable ON
. Andernfalls ist es OFF
. Siehe log_bin
in der MySQL-Dokumentation.
MySQL-Authentifizierung
In diesem Abschnitt werden die Änderungen an der integrierten MySQL-Authentifizierung beschrieben.
Standard-Authentifizierungs-Plug-in für MySQL 8.0
Cloud SQL for MySQL 8.0 verwendet mysql_native_password
als Standard-Authentifizierungs-Plug-in für neue Nutzer anstelle von caching_sha2_password
. Das Plug-in mysql_native_password
ist die Standardeinstellung für Nutzer von MySQL 5.6 und 5.7.
Wenn neue Nutzer das Plug-in caching_sha2_password
als Standardauthentifizierung verwenden sollen, können Sie Ihr Instanz-Flag für default_authentication_plugin
so konfigurieren, dass caching_sha2_password
verwendet wird.
Wenn Sie vorhandene Nutzer für die Verwendung von caching_sha2_password
konfigurieren möchten, ändern Sie das Authentifizierungs-Plug-in mit dem Befehl ALTER USER
.
Nutzer mit der caching_sha2_password
-Authentifizierung müssen bei der Verbindung möglicherweise das Flag get-server-public-key
verwenden. Weitere Informationen finden Sie unter SHA-2-Pluggable-Authentifizierung im Cache speichern in der MySQL-Dokumentation.
Standard-Authentifizierungs-Plug-in für MySQL 8.4
Ab Cloud SQL for MySQL 8.4 ist das caching_sha2_password
-Plug-in das Standard-Authentifizierungs-Plug-in.
Alle internen Nutzer und neuen Nutzerkonten, die Sie erstellen, verwenden das caching_sha2_password
-Plug-in für die Authentifizierung. Cloud SQL for MySQL 8.4 unterstützt weiterhin bestehende Cloud SQL-Nutzerkonten, die das mysql_native_password
-Plug-in verwenden. Diese bestehenden Konten können auch nach dem Upgrade der Instanzen auf MySQL 8.4 weiterhin eine Verbindung zu Cloud SQL for MySQL-Instanzen herstellen.
In Cloud SQL for MySQL 8.4 wird das mysql_native_password
-Authentifizierungs-Plug-in nicht mehr unterstützt.
Jeder Versuch, ein neues Nutzerkonto mit dem eingestellten mysql_native_password
-Authentifizierungs-Plug-in zu erstellen, führt zu einem Fehler.
Sie können die authentication_policy
eines Kontos in Cloud SQL for MySQL 8.4 nicht so festlegen, dass mysql_native_password
verwendet wird.
Wenn Sie Ihre vorhandenen Datenbanknutzerkonten so ändern möchten, dass sie das Authentifizierungs-Plug-in caching_sha2_password
verwenden, verwenden Sie den folgenden Befehl:
ALTER USER 'username'@'%' IDENTIFIED WITH caching_sha2_password BY 'user_password';
Ersetzen Sie username und user_password durch die Werte des Nutzerkontos, das Sie aktualisieren.
Weitere Informationen zu den Auswirkungen dieser Änderung auf die Kompatibilität zwischen Servern, Clients und Connectors finden Sie unter caching_sha2_password as the Preferred Authentication Plugin
.
Änderungen an MySQL-System-Flags in Cloud SQL
Für einige MySQL-System-Flags verwendet Cloud SQL Werte, die sich von den Standardwerten unterscheiden. Sie können die Werte für diese Flags nicht ändern. Eine Liste der Flags finden Sie unter In Cloud SQL geänderte System-Flags.
Cloud SQL-Features, die in Cloud SQL for MySQL 8.0 und höher nicht unterstützt werden
Cloud SQL for MySQL 8.0 und höher unterstützen nicht die Legacy-Cloud SQL for MySQL-Hochverfügbarkeitskonfiguration, die Failover-Replikate verwendet. Cloud SQL for MySQL 8.0 und höher unterstützen nur die regionale Hochverfügbarkeitskonfiguration.