Cloud SQL for MySQL – Fehlermeldungen

Auf dieser Seite werden einige der in Cloud SQL auftretenden Fehlermeldungen erläutert.

Übersicht

Fehlermeldungen in Cloud SQL stammen aus vielen verschiedenen Quellen. Einige Fehlermeldungen stammen von den Datenbankmodulen selbst, einige vom Cloud SQL-Dienst, andere von Clientanwendungen und manche werden durch Aufrufe an die Cloud SQL Admin API zurückgegeben.

Auf dieser Seite sind einige der häufigsten Fehler in Cloud SQL aufgeführt. Wenn Sie den gesuchten Fehlercode oder die gewünschte Fehlermeldung hier nicht finden, können Sie unter den folgenden Links nach Quellreferenzmaterial suchen:

Wenn Sie das Referenzmaterial für die angezeigte Fehlermeldung nicht finden, können Sie an folgenden Stellen nach relevanten Informationen von anderen Nutzern suchen:

Unbekannte Fehler

Die folgenden Tabelle enthält einige bekannte Fälle, in denen ein Unknown Error auftreten kann, sowie gegebenenfalls Möglichkeiten für die Problemlösung. Dies ist jedoch keine vollständige Liste. Sollten Sie Ihren spezifischen Fall nicht in der Tabelle finden, sehen Sie in der öffentlichen Problemverfolgung für Cloud SQL nach. Wenn Sie das Problem auch dort nicht finden, können Sie eine Meldung einreichen oder andere Supportoptionen prüfen.

Aktion Mögliche Ursache Lösungsvorschlag
Sicherung Wenn dieses Problem bei automatischen oder manuellen Sicherungen auftritt, ist das Instanzlaufwerk wahrscheinlich voll. Wenn die temporäre Datei zu viel Speicherplatz belegt, können Sie die Instanz neu starten, um die Datei zu entfernen und diesen Speicherplatz freizugeben. Andernfalls müssen Sie die Instanz möglicherweise auf ein größeres Laufwerk aktualisieren.
Klonen Hier kann der Fehler auftreten, wenn in der ausgewählten Zone zu wenige Ressourcen verfügbar sind. Versuchen Sie es mit einer anderen Zone in der Region oder versuchen Sie es später noch einmal.
Instanz erstellen
  • Hier kann der Fehler auftreten, wenn Sie versuchen, den Namen einer kürzlich gelöschten Instanz wiederzuverwenden.
  • Der Fehler kann außerdem durch vorübergehende Verbindungsprobleme verursacht werden.
  • Aus den Logs geht möglicherweise hervor, dass die Service Networking API nicht für das Projekt aktiviert ist.
  • Der Fehler ist auch aufgetreten, wenn versucht wurde, mehrere Instanzen parallel zu erstellen. Mit Terraform-Skripts ist eine solcher Versuch beispielsweise möglich.
  • Namen gelöschter Instanzen können erst nach einer Woche wiederverwendet werden.
  • Bei gelegentlichen Verbindungsproblemen können Sie nur versuchen, den Vorgang zu wiederholen.
  • Aktivieren Sie die Service Networking API für das Projekt.
  • Erstellungsskripte für parellele Instanzen werden lediglich bei der Erstellung einer der Instanzen erfolgreich sein. Ändern Sie das Skript so, dass es wartet, bis jeder Instanzerstellungsvorgang abgeschlossen ist, bevor mit dem nächsten fortgefahren wird.
Replikat erstellen Möglicherweise finden Sie in den Logdateien einen spezifischen Fehler. Prüfen Sie die Logs in Cloud Logging, um den tatsächlichen Fehler zu finden. Lautet der Fehler set Service Networking service account as servicenetworking.serviceAgent role on consumer project, deaktivieren Sie die Service Networking API und aktivieren Sie sie dann wieder. Dadurch wird das Dienstkonto erstellt, das für die Fortsetzung des Prozesses erforderlich ist.
Export Wenn das Problem beim Exportieren einer Datenbank in einen Cloud Storage-Bucket auftritt, kann die Übertragung aufgrund eines Bandbreitenproblems fehlschlagen. Die Cloud SQL-Instanz befindet sich möglicherweise in einer anderen Region als der Cloud Storage-Bucket. Das Lesen und Schreiben von Daten zwischen verschiedenen Kontinenten verursacht eine hohe Netzwerkauslastung, wodurch zeitweise Probleme wie dieses auftreten können.
Failover (Legacy) Falls Sie die Legacy-Failover-Konfiguration verwenden, kann der Fehler auftreten, wenn der für das Failover verwendete Maschinentyp keine ausreichende Kapazität für die Verarbeitung des Failovers hat. Die beste Lösung ist hier eine Migration zur aktuellen Hochverfügbarkeitskonfiguration. Andernfalls müssen Sie für das Failover-Replikat einen größeren Maschinentyp auswählen.
Failover (automatisch) Diese Fehlermeldung kann bei einem automatischen Failover ausgegeben werden, wenn der Dienst erkennt, dass die primäre Instanz noch reagiert. In diesem Fall müssen Sie nichts tun. Der Failover wird nicht durchgeführt, da er nicht benötigt wird.
Import Die Importdatei kann Anweisungen enthalten, die die Superuser-Rolle voraussetzen. Bearbeiten Sie die Datei und entfernen Sie alle Anweisungen, für die die Superuser-Rolle erforderlich ist.

Cloud SQL verwendet auch einige Binärprogramme von Drittanbietern, z. B. mysqld, die Meldungen über unbekannte Fehler auslösen können. Solche Fehler werden intern in den Binärprogrammen von Drittanbietern verursacht und liegen außerhalb der Kontrolle von Cloud SQL. Manchmal ist jedoch gleichzeitig ein spezifischerer Fehler in den Cloud SQL-Logdateien zu finden.

Auch ein unbekannter Fehlercode kann die Ursache sein. In diesem Fall kann die vollständige Meldung Unknown Error Code sein.

Weitere Fehler

Verbindung abgebrochen

Die Fehlermeldung Got an error reading communication packets oder Aborted connection xxx to db: DB_NAME wird angezeigt.

Mögliche Ursache

Der Fehler Aborted connection zeigt an, dass eine Anwendung Verbindungen nicht ordnungsgemäß beendet hat.

Lösungsvorschlag

Prüfen Sie auf Folgendes:

  • Die Anwendung hat nicht mysql_close() aufgerufen, bevor sie beendet wurde.
  • Kommunikationsfehler.
  • Die Anwendung war möglicherweise mehr als die in wait_timeout oder interactive_timeout angegebene Anzahl von Sekunden inaktiv, ohne Anfragen an den Server zu senden. Siehe Abschnitt 5.1.8 zu Serversystemvariablen.
  • Die Anwendung wurde während einer Datenübertragung plötzlich beendet.
  • Der Wert der Variablen max_allowed_packet ist möglicherweise zu klein oder Abfragen benötigen mehr Arbeitsspeicher, als mysqld zugewiesen ist. Dieses Problem lässt sich beheben, indem Sie das Flag max_allowed_packet auf einen viel größeren Wert setzen.


Ungültige Anfrage

Sie sehen die Fehlermeldung HTTP Error 400 Bad Request.

Mögliche Ursache

Ungültige Anfragen können viele Ursachen haben. Ein ungültiges Argument ist eine der häufigsten. Das bedeutet, dass die Anfrage entweder ein falsches Argument oder einen ungültigen Wert für ein Argument enthält. Es sind aber auch andere Ursachen denkbar. Die jeweiligen Fehlermeldungen können dazu hilfreiche Hinweise enthalten.

Lösungsvorschlag

Wenn ein ungültiges Argument die Ursache ist, sorgen Sie dafür, dass jedes Argument der Anfrage zulässig und jeder Argumentwert gültig ist. Sehen Sie bei anderen Ursachen in den Logdateien nach, ob weitere Informationen verfügbar sind.


Zugriff für Nutzer verweigert

Folgende Fehlermeldung ist zu sehen: Access denied for user 'XXX'@'XXX' (using password: XXX).

Mögliche Ursache

Dafür kann es verschiedene Gründe geben:

  • Der Nutzername oder das Passwort ist falsch.
  • Der Nutzer stellt eine Verbindung über eine andere URL als @XXX her.
  • Der Nutzer hat nicht die erforderlichen Berechtigungen für die Datenbank, zu der er eine Verbindung herstellen möchte.

Lösungsvorschlag

  • Prüfen Sie den Nutzernamen und das zugehörige Passwort.
  • Prüfen Sie, ob der Ursprung der Verbindung mit der URL übereinstimmt, für die der Nutzer Zugriffsrechte hat.
  • Prüfen Sie die Zuweisungsberechtigungen des Nutzers in der Datenbank.

Laufwerk voll

Die Fehlermeldung Disk is full wird angezeigt oder Sie stellen fest, dass der Speicherplatz auf dem Laufwerk aufgebraucht ist.

Mögliche Ursache

Das Laufwerk der primären Instanz kann während der Replikaterstellung zu voll werden.

Lösungsvorschlag

Bearbeiten Sie die primäre Instanz, um sie auf ein größeres Laufwerk zu aktualisieren.


Instanz stürzt ab, wenn ein Flag aktiviert wird

Nach dem Aktivieren eines Flags wechseln die Instanzen zwischen einer Panik und einem Absturz.

Mögliche Ursache

Dieser Fehler kann dadurch verursacht werden, dass das Flag max_connections auf einen zu hohen Wert gesetzt ist.

Lösungsvorschlag

Wenn Sie für das Flag max_connections einen zu hohen Wert festlegen, kann die Instanz möglicherweise nicht alle Verbindungen verarbeiten, was zu Error 1040: Too many connections und zu Heartbeat-Fehlern führt. Wenden Sie sich an den Kundensupport, um ein Entfernen des Flags mit anschließendem hard drain zu beantragen. Dadurch wird die Instanz auf einem anderen Host mit einer neuen Konfiguration und ohne das Flag bzw. die Einstellung neu gestartet.


Schwerwiegender Fehler beim Upgrade

Beim Upgrade von Ressourcen auf einer Instanz wird die Fehlermeldung ERROR_INTERNAL_FATAL angezeigt.

Mögliche Ursache

Dafür gibt es viele mögliche Gründe.

Lösungsvorschlag

Logs enthalten möglicherweise nützliche Informationen. Sie können sich auch an den Kundensupport wenden, um die Neuerstellung der Instanz zu erzwingen.


HTTP-Fehler 408: (Zeitüberschreitung) während des Exports

Beim Ausführen eines Exportjobs in Cloud SQL wird die Fehlermeldung HTTP Error 408 (Timeout) angezeigt.

Mögliche Ursache

Die Formate CSV und SQL werden unterschiedlich exportiert. Das SQL-Format umfasst die gesamte Datenbank, sodass der Export wahrscheinlich länger dauert. Beim CSV-Format können Sie angeben, welche Elemente der Datenbank in den Exportvorgang einbezogen werden sollen.

Lösungsvorschlag

Verwenden Sie das CSV-Format und führen Sie mehrere kleinere Exportjobs aus, um die Größe und Länge der einzelnen Vorgänge zu reduzieren.


HTTP-Fehler 409

Sie sehen die Fehlermeldung HTTP Error 409 in a Terraform script oder Error 409 Operation failed because another operation was already in progress.

Mögliche Ursache

  1. Prüfen Sie das Terraform-Skript. Das Skript muss darauf warten, dass ein Vorgang abgeschlossen ist, bevor der nächste Vorgang gestartet wird.
  2. HTTP Error 409: Operation failed because another operation was already in progress.
  3. Sie versuchen, für eine neue Instanz denselben Namen wie für eine kürzlich gelöschte Instanz zu verwenden, bevor die Wartezeit für die Wiederverwendung von Namen abgelaufen ist.

Lösungsvorschlag

  1. Wenn Sie ein Terraform-Skript ausführen, halten Sie die Ausführung an, bis der jeweilige Instanzvorgang abgeschlossen ist. Lassen Sie das Skript warten, bis für die vorherige Vorgangs-ID 200 zurückgegeben wird. Warten Sie andernfalls, bis der derzeit ausgeführte Vorgang abgeschlossen ist.
  2. Nach dem Löschen einer Instanz müssen Sie eine Woche warten, bevor Sie denselben Namen für eine neue Instanz wiederverwenden können.

Instanz kann nicht gelöscht werden

Fehlermeldung

Sie sehen die Fehlermeldung ERROR: (gcloud.sql.instances.delete) HTTP Error 409: The instance or operation is not in an appropriate state to handle the request oder die Instanz hat den Flag-Status INSTANCE_RISKY_FLAG_CONFIG.

Mögliche Ursache

  1. Another operation is in progress.
  2. Die Warnung INSTANCE_RISKY_FLAG_CONFIG wird immer dann ausgelöst, wenn mindestens ein BETA-Flag verwendet wird.

Lösungsvorschlag

  1. Cloud SQL-Vorgänge werden nicht gleichzeitig ausgeführt. Warten Sie, bis der andere Vorgang abgeschlossen ist.
  2. Entfernen Sie die Einstellungen für das risikobehaftete Flag und starten Sie die Instanz neu.

Interner Fehler

Folgende Fehlermeldung ist zu sehen: {"ResourceType":"sqladmin.v1beta4.instance", "ResourceErrorCode":"INTERNAL_ERROR","ResourceErrorMessage":null}.

Mögliche Ursache

Im Dienstprojekt fehlt möglicherweise das Dienstnetzwerk-Dienstkonto, das für dieses Feature erforderlich ist.

Lösungsvorschlag

Deaktivieren Sie zum Reparieren von Dienstberechtigungen die Service Networking API, warten Sie fünf Minuten und aktivieren Sie sie dann wieder.


MySQL-Fehler 1040

Die Fehlermeldung MySQL Error 1040: Too many connections wird angezeigt.

Mögliche Ursache

Ein zu hoher Wert für das Flag max_connections kann diesen Fehler verursachen.

Lösungsvorschlag

Wenden Sie sich an den Kundensupport, um ein Entfernen des Flags mit anschließendem hard drain anzufordern. Dadurch wird die Instanz auf einem anderen Host mit einer neuen Konfiguration und ohne das Flag bzw. die Einstellung neu gestartet.


Netzwerkzuordnung fehlgeschlagen

Die Fehlermeldung Network association failed due to the following error: set Service Networking service account as servicenetworking.serviceAgent role on consumer project wird angezeigt.

Mögliche Ursache

Die Service Networking API ist im Projekt nicht aktiviert.

Lösungsvorschlag

Aktivieren Sie die Service Networking API in Ihrem Projekt. Wird dieser Fehler angezeigt, wenn Sie einer Cloud SQL-Instanz eine private IP-Adresse zuweisen und eine freigegebene VPC verwenden, müssen Sie die Service Networking API auch für das Hostprojekt aktivieren.


Keine Berechtigung zum Herstellen einer Verbindung

Die Fehlermeldung Unauthorized to connect wird angezeigt.

Mögliche Ursache

Da die Autorisierung auf mehreren Ebenen erfolgt, kann dies verschiedene Ursachen haben.

  • Auf Datenbankebene muss der Datenbanknutzer vorhanden sein und sein Passwort muss übereinstimmen.
  • Auf Projektebene hat der Nutzer möglicherweise nicht die richtigen IAM-Berechtigungen, einschließlich der Berechtigung serviceusage.services.use oder cloudsql.instances.connect.
  • Wenn die Cloud SQL-Instanz auf Netzwerkebene öffentliche IP-Adressen verwendet, muss sich die Quell-IP-Adresse der Verbindung in einem autorisierten Netzwerk befinden.

Lösungsvorschlag

  • Achten Sie darauf, dass der Nutzer vorhanden ist und dass sein Passwort übereinstimmt.
  • Weisen Sie dem Nutzerkonto die Rolle Service Usage Consumer zu. Diese Rolle enthält die Berechtigung serviceusage.services.use.
  • Wenn Sie eine öffentliche IP-Adresse verwenden, achten Sie darauf, dass sich die Quell-IP-Adresse in einem autorisierten Netzwerk befindet.

Vorgang ist für diese Instanz nicht gültig

Ein API-Aufruf an instances.restoreBackup führt zu der Fehlermeldung HTTP Error 400: This operation isn't valid for this instance.

Mögliche Ursache

Sie können eine Instanz nicht aus einer Sicherung wiederherstellen, wenn die Speichergröße (XX GB) der Instanz kleiner als die Sicherungsgröße (YY GB) ist.

Lösungsvorschlag

Bearbeiten Sie die Zielinstanz, um ihre Speichergröße zu erhöhen.


Nicht genügend Arbeitsspeicher während der automatischen Sicherung

Die Fehlermeldung [ERROR] InnoDB: Write to file ./ibtmp1 failed at offset XXXX, YYYY bytes should have been written, only 0 were written. wird angezeigt.

Mögliche Ursache

Die Instanz hat beim Ausführen einer automatischen Sicherung ein festes Limit erreicht.

Lösungsvorschlag

Prüfen Sie, ob Ihr Betriebssystem und Ihr Dateisystem Dateien dieser Größe unterstützen. Prüfen Sie, ob das Laufwerk voll oder das Laufwerkskontingent aufgebraucht ist. Sie können über die Google Cloud Console eine Erhöhung Ihrer Kontingente beantragen oder die Instanz bearbeiten, um sie auf ein größeres Laufwerk zu aktualisieren.


Kontingent überschritten

Sie sehen die Fehlermeldung RESOURCE_EXHAUSTED: Quota exceeded oder GLOBAL_ADDRESSES_QUOTA_EXCEEDED.

Mögliche Ursache

Sie haben das Limit Ihres Kontingents pro Minute oder Tag erreicht. Sehen Sie sich die Kontingente und Limits für Cloud SQL an.

Lösungsvorschlag

Fordern Sie über die Google Cloud Console eine Erhöhung Ihrer Kontingente an.


Verbleibende Verbindungsslots sind reserviert

Folgende Fehlermeldung ist zu sehen: FATAL: remaining connection slots are reserved for non-replication superuser connections.

Mögliche Ursache

Die maximal zulässige Anzahl von Verbindungen wurde erreicht.

Lösungsvorschlag

Erhöhen Sie das Flag max_connections. Siehe Datenbank-Flags konfigurieren.


In der Anfrage fehlt ein gültiger API-Schlüssel

Die Fehlermeldung HTTP Error 403: PERMISSION_DENIED. The request is missing a valid API key wird angezeigt.

Mögliche Ursache

Möglicherweise haben Sie keine gültige JSON-Datei für den Dienstkontoschlüssel oder sie wurde nicht am erwarteten Ort gespeichert.

Lösungsvorschlag

Prüfen Sie, ob Sie an dem in der Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS gespeicherten Ort eine gültige Dienstkonto-JSON-Datei haben und dass die Variable auf den richtigen Speicherort verweist.


Systemfehler aufgetreten

Die Fehlermeldung [ERROR_RDBMS] system error occurred wird angezeigt.

Mögliche Ursache

  1. Der Nutzer hat eventuell nicht alle erforderlichen Cloud Storage-Berechtigungen.
  2. Die Datenbanktabelle ist möglicherweise nicht vorhanden.

Lösungsvorschlag

  1. Prüfen Sie, ob Sie mindestens WRITER-Berechtigungen für den Bucket und READER-Berechtigungen für die Exportdatei haben. Weitere Informationen zum Konfigurieren der Zugriffssteuerung in Cloud Storage finden Sie unter Access Control Lists (ACLs) erstellen und verwalten.
  2. Prüfen Sie, ob die Tabelle vorhanden ist. Wenn die Tabelle vorhanden ist, prüfen Sie, ob Sie die erforderlichen Berechtigungen für den Storage-Bucket haben.

Tabellendefinition hat sich geändert

Die Fehlermeldung Table definition has changed, please retry transaction when dumping table wird angezeigt.

Mögliche Ursache

Während des Exportvorgangs ist in der Tabelle eine Änderung aufgetreten.

Lösungsvorschlag

Die Dump-Transaktion kann fehlschlagen, wenn Sie während des Exportvorgangs die folgenden Anweisungen verwenden:

  • ALTER TABLE
  • CREATE TABLE
  • DROP TABLE
  • RENAME TABLE
  • TRUNCATE TABLE
Entfernen Sie alle diese Anweisungen aus dem Dump-Vorgang.


Größe der temporären Datei überschreitet "temp_file_limit"

Die Fehlermeldung Temporary file size exceeds temp_file_limit wird angezeigt.

Mögliche Ursache

Der Wert des Flags temp_file_limit ist für Ihre Datenbanknutzung zu niedrig.

Lösungsvorschlag

Erhöhen Sie den Wert von temp_file_limit. Siehe Datenbank-Flags konfigurieren.