Haben Sie während der Installation Probleme mit der Verbindung zu Ihrer Datenbank? Dieser Leitfaden behandelt häufige Datenbankverbindungsprobleme und bietet schrittweise Lösungen zur Behebung dieser Probleme.
Problem A: Validierung schlägt fehl
Wenn Sie in Schritt 1 (Pro) und Schritt 2 (Lite) des Installationsprogramms auf "Datenbank testen" klicken, erhalten Sie einen Fehlerstatus.
Lösung 1: Checkliste für die Validierung
Vergewissern Sie sich, dass die Anmeldedaten und Berechtigungen für die Datenbank korrekt eingerichtet sind:
- Vergewissern Sie sich, dass die Datenbank und der Datenbankbenutzer erstellt worden sind.
- Überprüfen Sie, ob das Passwort mit dem verwendeten Datenbankbenutzer übereinstimmt.
- Stellen Sie sicher, dass der Datenbankbenutzer der Datenbank mit den richtigen Berechtigungen zugewiesen ist.
- Ändern Sie das Passwort des Datenbankbenutzers vorübergehend in "test123", um die Zeicheneingabe zu überprüfen.
- Wenden Sie sich an Ihren Hosting-Anbieter, um die genauen erforderlichen Parameter zu erfahren.
Lösung 2: Überprüfung des Hostnamens
Der Standard-Hostname "localhost" funktioniert in den meisten Fällen, kann aber je nach Hosting-Anbieter abweichen. Bestätigen Sie die genauen Einstellungen mit Ihrem Hoster. Einige gängige Variationen sind:
mysql.yourname.com
mysql.hostingcompany.com
mysql.hostingcompany.com:1400
Wenn Sie eine Fehlermeldung wie "Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)" sehen, liegt das wahrscheinlich an einem falschen Hostnamen.
Schnelle Lösung:
Wenden Sie sich an Ihren Hosting-Provider, um die korrekten Anmeldedaten für Datenbankverbindungen zu erhalten. Schauen Sie sich diese Support-Ressourcen an:
- GoDaddy
- HostMonster
- Bluehost
- HostGator
- DreamHost
- Suche mit Google:
"[Your host] database setup"
Lösung 3: SQL-Modus-Konflikte
Wenn Sie die Meldung "Fehler beim Lesen von Datenbankvariablen" erhalten, kann es sein, dass bei Ihrer MySQL-Instanz im SQL-Modus "ANSI_QUOTES" aktiviert ist. Da MySQL in diesem Modus doppelte Anführungszeichen als Bezeichner und nicht als Zeichenketten behandelt, kann dies zu Problemen führen. Um dies zu beheben, entfernen Sie den SQL-Modus ANSI_QUOTES.
Allgemeine Fehlermeldungen:
Unknown column ‘wp_table’ in ‘where clause’
Problem B: Zugang verweigert
Wenn Sie eine Fehlermeldung wie die folgende erhalten Access denied for user 'myuser'@'localhost' (using password: YES)
Wenn Sie die Datenbankverbindung testen, folgen Sie diesen Lösungen.
Allgemeine Fehlermeldungen:
Error: 'Access denied; you need (at least one of) the PROCESS privilege ...
The database user for this WordPress site does NOT have sufficient permissions to write stored procedures ...
Lösung 1: Zuweisung voller Berechtigungen
Stellen Sie sicher, dass der Datenbankbenutzer der Datenbank mit vollen Rechten zugewiesen ist:
- Am einfachsten ist es, wenn Sie sich bei Ihrem Hosting-Anbieter über die Berechtigungen informieren.
- Folgen Sie dem WordPress Codex Guide, um eine Datenbank und einen Benutzer zu erstellen.
- Eine cPanel-Demo finden Sie in diesem Artikel.
- Für MySQL 8+: Führen Sie den folgenden Befehl aus, um alle erforderlichen Berechtigungen zu erteilen:
GRANT SHOW_ROUTINE ON *.* TO <USER>@<LOCATION>;
Lösung 2: Erstellen eines neuen Datenbankbenutzers
Wenn die Zuweisung voller Berechtigungen nicht funktioniert, erstellen Sie einen neuen Datenbankbenutzer, gewähren Sie volle Berechtigungen und weisen Sie ihn der Datenbank zu. Dadurch können in der Datenbank gespeicherte Caching-Probleme behoben werden.
Lösung 3: Verschieben von Datenbanken zwischen Servern
Bei der Migration einer Site zwischen verschiedenen MySQL-Servern kann es vorkommen, dass verschiedene MySQL-Versionen nicht dieselben Direktiven unterstützen, was zu einem Fehler wie diesem führt:
mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege ...'
Umgehungen:
- Erstellen Sie im PHP-Modus: Verwenden Sie PHP, um Konflikte mit MySQL-Direktiven zu vermeiden.
- Ändern Sie das SQL-Skript: Entfernen Sie nicht unterstützte Direktiven aus der SQL-Datei, bevor Sie das Installationsprogramm ausführen.
Problem C: Datenbank-Zeitüberschreitungen
Wenn bei Schritt 2 SQL-Verbindungs-Timeouts oder Speicherfehler auftreten, befolgen Sie diese Lösungen.
Lösung 1: Aktivieren Sie Datenbank-Chunking
Durch diesen Multi-Thread-Prozess wird die Datenbankinstallation in kleinere Abfragen aufgeteilt.
- Starten Sie das Installationsprogramm und aktivieren Sie den erweiterten Modus, indem Sie auf die Schaltfläche "Erweitert" klicken.
- In Schritt 1 aktivieren Sie unter Optionen " Registerkarte Datenbank " Verarbeitung den "Chunking-Modus".
- Fahren Sie mit der Installation fort.
Lösung 2: Datenbankextraktion überspringen
Anstatt neue Datenbanktabellen zu erstellen, importieren Sie die Datenbank manuell.
Schritte:
- Auszug
database.sql
aus dem Archiv. - Verwenden Sie phpMyAdmin, um bestehende Tabellen zu entfernen und die SQL-Datei zu importieren.
- Wählen Sie im Installationsprogramm unter Erweiterte Optionen die Option "Datenbankextraktion überspringen".
Lösung 3: Duplicator Lite-spezifische Probleme
Duplicator Lite (v1.4.7.2 oder früher) unterstützt nur einen Single-Thread-Datenbankimport, was auf ausgelasteten gemeinsamen Servern zu Problemen führen kann.
Umgehungen:
- Lassen Sie das Installationsprogramm außerhalb der Hauptverkehrszeiten laufen.
- Ändern Sie den Erstellungsmodus in den Duplicator-Einstellungen auf "PHP".
- Wenden Sie sich an Ihren Host, um die Timeout-Grenzen des Servers zu erhöhen.
- Upgraden Sie auf Duplicator Pro, um SQL File Chunking zu nutzen.
Allgemeine Fehlermeldungen:
MySQL Server has gone away, out of memory, or 500 Error
Fehlerbehebung
Wenn die Verbindungsprobleme fortbestehen, verwenden Sie PHP-Code, um das Problem zu isolieren. Erstellen Sie eine Datei namens db-test.php
in dasselbe Verzeichnis wie das Installationsprogramm und fügen Sie den folgenden Code ein:
<?php
$servername = "your_server";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Success: Connected to MySQL!";
?>
Wenn das Skript fehlschlägt, teilen Sie es Ihrem Hosting-Provider zur weiteren Fehlerbehebung mit.
Dieses Skript ist auch in der Datei Verzeichnis der Duplicator Pro Tools unter /plugins/duplicator-pro/tools/db-test.php
.
Wenn Sie diese Lösungen befolgen, können Sie Probleme mit der Datenbankverbindung beheben und einen reibungslosen Installationsprozess gewährleisten.