Bitte verwenden sie die "Drucken" Funktion am Seitenende, um ein PDF zu erstellen.
Stoppt Ihr PHP-Skript oder Ihre Anwendung, zum Beispiel WordPress, mit einer MySQL-Fehlermeldung im Browser? In diesem Artikel haben wir eine Übersicht der häufigsten Fehler für Sie zusammengestellt und geben Tipps zur Fehlerbehebung.
Fehler bei der Datenbankverbindung im Skript
Diese Fehler treten typischerweise auf, wenn Ihre Anwendung oder Ihr Skript versucht, eine Verbindung zur MySQL-Datenbank herzustellen.
Fehlermeldung: “Warning: mysql_connect(): Access denied for user 'dbo123456789...'”
Bedeutung: Der MySQL-Server verweigert den Zugriff auf die Datenbank, da die Anmeldedaten nicht korrekt sind.
Lösungshilfe: Überprüfen Sie sorgfältig den Benutzernamen und das Passwort für die Datenbank, die in Ihrem Skript hinterlegt sind. Ein Tippfehler ist hier die häufigste Ursache.
Fehlermeldung: “Can't connect to database...” oder „Warning: mysql_fetch_array() expects parameter 1..."
Bedeutung: Es kann keine Verbindung zur Datenbank hergestellt werden. Dies deutet in der Regel darauf hin, dass die Zieldatenbank nicht gefunden wurde.
Lösungshilfe: Stellen Sie sicher, dass der Datenbankname korrekt in Ihrem Verbindungsskript eingetragen ist.
Fehlermeldung: “Unknown MySQL server... no connection possible”
Bedeutung: Der angegebene MySQL-Server (Hostname) ist dem System unbekannt, weshalb keine Verbindung aufgebaut werden kann.
Lösungshilfe: Prüfen Sie den im Skript angegebenen Hostnamen (auch MySQL-Server genannt). In den meisten Fällen ist hier fälschlicherweise noch „localhost” hinterlegt, anstatt des korrekten Hostnamens Ihres IONOS-Datenbankservers.
Fehlermeldung: “Too many connections”
Bedeutung: Die maximal zulässige Anzahl an gleichzeitigen Verbindungen zu Ihrer Datenbank wurde erreicht.
Lösungshilfe: Dieser Fehler kann bei einem ungewöhnlich hohen Besucheraufkommen kurzzeitig auftreten. Wir empfehlen, einen Moment zu warten und dann zu prüfen, ob der Fehler weiterhin besteht. Sollte diese Meldung häufiger erscheinen, prüfen Sie bitte die Leistungsanforderungen Ihrer Anwendung. Gerne beraten wir Sie bei der Wahl eines leistungsfähigeren Pakets.
Profi-Tipp: Optimieren Sie Ihre Datenbank, um die Leistung zu erhöhen. Verwenden Sie für Felder, die nur Zahlen enthalten, Datentypen wie TINYINT oder SMALLINT anstelle von CHAR oder VARCHAR. Das reduziert den Speicherbedarf und kann die Performance verbessern. Beachten Sie bitte auch, dass laufende Wartungsarbeiten am Server die Verbindung kurzzeitig verzögern können.
Fehler beim direkten Arbeiten mit der Datenbank (z. B. in phpMyAdmin)
Die folgenden Fehlermeldungen treten häufig auf, wenn Sie direkt mit der Datenbank arbeiten, beispielsweise bei einem Datenimport oder -export:
Fehlermeldung: “1046 - No database selected;”
Bedeutung: Für die auszuführende Aktion (z. B. einen Import) wurde keine Datenbank ausgewählt.
Lösungshilfe: Dieser Fehler tritt häufig auf, wenn ein Import über phpMyAdmin gestartet wird, ohne zuvor eine Zieldatenbank anzugeben. Klicken Sie deshalb vor dem Start des Imports in der linken Spalte auf den Namen der Datenbank, in die Sie die Daten importieren möchten.
Fehlermeldung: “1062 (23000) at line 45: Duplicate entry '1' for key ‘PRIMARY’”
Bedeutung: Beim Import wurde versucht, einen Datensatz mit einem Primärschlüssel (PRIMARY KEY) einzufügen, der bereits in der Tabelle vorhanden ist. Jeder Primärschlüssel muss einzigartig sein.
Lösungshilfe: Sie können bereits beim Export der Datenbankdatei festlegen, wie der MySQL-Server mit doppelten Einträgen umgehen soll. Alternativ können Sie die SQL-Importdatei manuell bearbeiten, um die Duplikate zu entfernen oder die INSERT-Befehle anzupassen (z. B. durch INSERT IGNORE oder REPLACE).
Fehlermeldung: “mysqldump: Error: You have an error in your SQL syntax ... when trying to dump tablespaces”
Bedeutung: Dieser Syntaxfehler kann auftreten, wenn Sie versuchen, eine ältere MySQL-Datenbank (z. B. Version 4) per SSH mit einem mysqldump-Befehl zu exportieren, der für neuere Versionen gedacht ist und die Option tablespaces enthält.
Lösungshilfe: Fügen Sie beim Export über die Shell (SSH) einfach den Parameter `--no-tablespaces` zu Ihrem Befehl hinzu.
Ein Beispiel hierfür ist: `mysqldump --no-tablespaces --host=dbXX.1und1.de --password=XYZ --user=dbo123456789 db123456789 > dump.sql`