Zum Inhalt springen
Fehler & Abstürze

Fehler beim Aufbau der Datenbankverbindung in WordPress: So behebst du ihn

Behebe den WordPress-Fehler beim Aufbau der Datenbankverbindung: prüfe die vier Zugangsdaten in der wp-config.php, stelle sicher, dass der Datenbankserver läuft, und repariere eine beschädigte Tabelle.

Veröffentlicht

Du lädst deine Website, und jede Seite — Frontend wie wp-admin — ist durch einen einzigen grauen Satz ersetzt: Fehler beim Aufbau einer Datenbankverbindung. Nichts wird angezeigt, weil nichts angezeigt werden kann. WordPress ist gar nicht erst so weit gekommen, eine Seite aufzubauen.

Hier ist das Denkmodell, mit dem sich das schnell beheben lässt. WordPress speichert deine gesamten Inhalte — Beiträge, Seiten, Einstellungen, Benutzer — in einer MySQL-Datenbank, nicht in Dateien. Bei jedem Aufruf liest es vier Zugangsdaten aus der wp-config.php, verbindet sich mit dieser Datenbank und holt sich, was es braucht. Dieser Fehler bedeutet, dass diese Verbindung versucht und abgelehnt wurde. Die Lösung besteht darin, herauszufinden, warum sie abgelehnt wurde, und dafür gibt es nur drei Möglichkeiten.

Die drei Ursachen, nach Wahrscheinlichkeit geordnet

  1. Ein falscher Zugangswert in der wp-config.php — meist die Folge eines Hosterwechsels.
  2. Der Datenbankserver ist ausgefallen oder überlastet — meist die Folge davon, dass sich auf deiner Seite nichts geändert hat.
  3. Die Datenbank ist beschädigt — seltener, und sie kündigt sich anders an.

Arbeite sie in dieser Reihenfolge ab.

Schritt 1: die vier Zugangsdaten prüfen

Öffne die wp-config.php im Stammverzeichnis deiner Website per SFTP oder über den Dateimanager deines Hosters. Vier Zeilen definieren die Verbindung:

define( 'DB_NAME', 'your_database_name' );
define( 'DB_USER', 'your_database_user' );
define( 'DB_PASSWORD', 'your_database_password' );
define( 'DB_HOST', 'localhost' );

Jeder dieser Werte muss exakt dem entsprechen, was dein Hoster vergeben hat. Öffne den Datenbankbereich in deinem Hosting-Panel (in cPanel heißt er “MySQL-Datenbanken”) und vergleiche Zeichen für Zeichen:

  • DB_NAME — Hoster stellen dem Namen oft dein Konto voran, etwa cpaneluser_wpdb. Das Präfix gehört zum Namen.
  • DB_USER — dasselbe Präfix gilt hier, und der Benutzer muss dieser Datenbank zugewiesen sein, nicht nur existieren.
  • DB_PASSWORD — der mit Abstand häufigste Übeltäter. Wenn du unsicher bist, setze es im Panel zurück und füge den neuen Wert ein. Achte auf ein angehängtes Leerzeichen oder ein typografisches Anführungszeichen.
  • DB_HOST — geh nicht von localhost aus. Viele Hoster nutzen einen eigenen Datenbankserver mit einer Adresse wie mysql.yourhost.com, manchmal mit einem :port. Das Panel zeigt den richtigen Wert.

Weil genau in dieser Datei diese vier Werte stehen, ist der sicherste Weg zu einer sauberen, korrekt gequoteten wp-config.php der wp-config.php-Generator — trage die vier Datenbankfelder ein und füge das Ergebnis über den alten Block.

Dieser Schritt allein behebt den Fehler nach fast jeder Migration, weil Zugangsdaten, die auf dem alten Host richtig waren, auf dem neuen falsch sind.

Schritt 2: sicherstellen, dass der Datenbankserver wirklich läuft

Wenn die Zugangsdaten stimmen und der Fehler bleibt — besonders, wenn er von selbst auftauchte, ohne dass du etwas geändert hast —, ist der Datenbankserver selbst der Verdächtige.

Bei Shared Hosting ist das häufig und meist vorübergehend: Der MySQL-Dienst wird bei einem Besucheransturm überlastet oder erreicht sein Verbindungslimit pro Konto und beginnt, neue Verbindungen abzulehnen. In der Regel erholt er sich innerhalb weniger Minuten. Lade nach einer kurzen Wartezeit neu, bevor du etwas Drastisches unternimmst.

Um zu testen, ob die Zugangsdaten unabhängig von WordPress überhaupt gültig sind, leg ein winziges Skript neben die wp-config.php:

<?php
$link = mysqli_connect('localhost', 'your_database_user', 'your_database_password');
if (!$link) {
    die('Connection failed: ' . mysqli_connect_error());
}
echo 'Connected — the server and credentials are fine.';

Verwende dein echtes DB_HOST, DB_USER und DB_PASSWORD. Gibt es Connected aus, funktionieren deine Zugangsdaten und das Problem liegt woanders (eine beschädigte Datenbank, Schritt 3). Gibt es einen Verbindungsfehler aus, sagt dir die Meldung, welchen: “Access denied” bedeutet einen falschen Benutzer oder ein falsches Passwort; “Can’t connect to MySQL server” bedeutet einen falschen Host oder einen tatsächlich ausgefallenen Dienst — Zeit, deinen Hoster zu kontaktieren. Lösche das Skript, sobald du fertig bist.

Schritt 3: eine beschädigte Datenbank reparieren

Ein Anzeichen trennt Beschädigung von einem Verbindungsproblem: Das Frontend lädt, aber wp-admin zeigt den Fehler, oder umgekehrt. Wäre die Verbindung wirklich abgelehnt, wären beide tot. Eine solche Aufspaltung deutet auf beschädigte Tabellen hin.

WordPress hat ein eingebautes Reparaturwerkzeug. Füge der wp-config.php eine Zeile hinzu, oberhalb des “stop editing”-Kommentars:

define( 'WP_ALLOW_REPAIR', true );

Rufe dann diese URL direkt im Browser auf:

https://yoursite.com/wp-admin/maint/repair.php

Sie lädt ohne Login — das ist der Sinn, denn du könntest ausgesperrt sein — und bietet “Datenbank reparieren” und “Datenbank reparieren und optimieren” an. Führe die Reparatur aus.

Lösche diese Zeile danach sofort aus der wp-config.php. Solange sie vorhanden ist, kann jeder im Internet diese URL aufrufen und eine Reparatur deiner Datenbank auslösen. Das ist keine optionale Aufräumarbeit; es schließt ein Loch, das du gerade geöffnet hast.

Schritt 4: wenn die Reparatur nicht einmal verbindet

Zeigt die Reparaturseite selbst den Verbindungsfehler, gibt es nichts zu reparieren — die Datenbank ist überhaupt nicht erreichbar, also bist du zurück bei Schritt 1 oder Schritt 2. An diesem Punkt ist der verlässliche Schritt, die Datenbank aus dem jüngsten Backup deines Hosters wiederherzustellen. Die meisten Panels führen automatische tägliche Datenbank-Snapshots; eine Wiederherstellung von gestern Nacht ist fast immer schneller und sicherer, als einer Beschädigung nachzujagen, mit der du dich nicht verbinden kannst.

Ratschläge, die du getrost ignorieren kannst

“Installier einfach WordPress neu.” Bei diesem Fehler geht es um die Datenbankverbindung, nicht um Core-Dateien. Eine Neuinstallation ersetzt genau die Dateien, die einwandfrei funktionieren, und rührt nichts an, was kaputt ist.

“Erhöh dein PHP-Speicherlimit.” Speichererschöpfung ist ein anderer Fehler mit einer anderen Meldung. Das Limit anzuheben bringt bei einer abgelehnten Datenbankverbindung nichts und verdeckt nur, dass du die Zugangsdaten nie geprüft hast.

“Leer deinen Cache.” Der Fehler passiert in PHP, bevor ein Cache überhaupt eine Seite ausliefern kann. Den Cache zu leeren ändert nichts, solange die Verbindung abgelehnt wird; es lohnt sich erst, nachdem die Website wieder da ist.

“Bearbeite die Datenbank direkt, um es zu beheben.” Zu phpMyAdmin zu greifen und Tabellen von Hand zu bearbeiten, bevor du bestätigt hast, dass die Verbindung überhaupt funktioniert, ist der Weg, auf dem aus einem vorübergehenden Ausfall dauerhafter Datenverlust wird. Bestätige zuerst die Verbindung; rühr die Daten zuletzt an, und nur aus einem Backup.

Immer noch festgefahren?

Wenn die Zugangsdaten sich mit dem Testskript bestätigen, der Server läuft und die Reparatur verbindet und keine Fehler meldet, die Website aber weiterhin die Meldung zeigt, bleibt als Verdächtiger ein Plugin, das über eine eigene Verbindung mit der Datenbank spricht — ein Caching- oder Datenbank-Plugin, das einen veralteten Host gespeichert hat. Benenne wp-content/plugins per SFTP in plugins-off um, um das auszuschließen. Verschwindet der Fehler, hol die Plugins einzeln zurück, bis er wiederkehrt.

FAQ

Fragen

Was bedeutet der Fehler beim Aufbau der Datenbankverbindung in WordPress?

Es bedeutet, dass WordPress geladen wurde, die wp-config.php gelesen, mit den dort gefundenen Zugangsdaten versucht hat, sich mit deiner MySQL-Datenbank zu verbinden, und abgewiesen wurde. Der Fehler passiert, bevor irgendeine Seite aufgebaut wird, weshalb die ganze Website nur eine leere Textzeile ist. Entweder ist ein Zugangswert falsch, der Datenbankserver ist ausgefallen oder überlastet, oder die Datenbank selbst ist beschädigt.

In welcher Datei stehen die Zugangsdaten der WordPress-Datenbank?

Die wp-config.php, im Stammverzeichnis deiner Website neben der wp-load.php. Vier Konstanten definieren die Verbindung: DB_NAME, DB_USER, DB_PASSWORD und DB_HOST. Ein einziges falsches Zeichen in einer davon erzeugt genau diesen Fehler, und Hoster-Migrationen sind der häufigste Grund, warum sie veralten.

Warum ist der Fehler aufgetaucht, obwohl ich nichts geändert habe?

Fast immer der Datenbankserver, nicht deine Website. Bei Shared Hosting wird der MySQL-Dienst bei Besucherspitzen überlastet oder erreicht sein Verbindungslimit und lehnt neue Verbindungen ab. Meist klärt sich das innerhalb von Minuten von selbst. Passiert es immer wieder, ist dein Hoster die richtige Anlaufstelle, oder du bist aus dem Tarif herausgewachsen.

Ist DB_HOST immer localhost?

Nein, und diese Annahme verursacht nach vielen Migrationen genau diesen Fehler. Viele Hoster betreiben die Datenbank auf einem eigenen Server, sodass DB_HOST eine Adresse wie mysql.yourhost.com oder eine IP mit Port ist. Der Datenbankbereich in deinem Hosting-Panel zeigt den richtigen Wert. Kopiere ihn exakt, samt eventuellem :port-Suffix.

Wie repariere ich eine beschädigte WordPress-Datenbank?

Füge define( 'WP_ALLOW_REPAIR', true ); zur wp-config.php hinzu, rufe dann yoursite.com/wp-admin/maint/repair.php im Browser auf und führe die Reparatur aus. Sie braucht keinen Login, weshalb du genau diese Zeile löschen musst, sobald du fertig bist — lässt du sie stehen, kann jeder eine Reparatur auslösen. Verbindet sie sich gar nicht, liegt das Problem bei den Zugangsdaten oder dem Server, nicht an einer Beschädigung.

Warum zeigt nur wp-admin den Fehler, während das Frontend lädt?

Diese Aufspaltung deutet eher auf eine beschädigte Datenbank als auf ein Verbindungsproblem hin, denn für das Frontend funktioniert die Verbindung offensichtlich. WordPress markiert die Admin-Seite manchmal getrennt. Führe zuerst die eingebaute Datenbankreparatur aus; löst das es nicht, stelle die Datenbank aus dem jüngsten Backup deines Hosters wieder her.