Heim >Backend-Entwicklung >PHP-Tutorial >Warum gibt mein PHP-Code beim Herstellen einer Verbindung zu meiner MySQL-Datenbank „SQLSTATE[HY000] [2002] Verbindung abgelehnt' zurück?
PHP-Verbindungsverweigerung mit SQLSTATE[HY000] [2002]
Beim Versuch, eine Datenbankverbindung in PHP herzustellen, tritt der Fehler „SQLSTATE“ auf [HY000] [2002] Verbindung verweigert“ zeigt an, dass der Verbindungsversuch aufgrund von Netzwerkkommunikationsproblemen fehlgeschlagen ist. Dies kann durch Beheben der folgenden Aspekte behoben werden:
Falsche Portkonfiguration:
Der bereitgestellte Code hat den Hostnamen auf „127.0.0.1“ festgelegt, aber den Port nicht angegeben ausdrücklich. Bei Verwendung von MAMP läuft MySQL häufig auf Port 8889 statt auf dem Standardport 3306. Um dieses Problem zu beheben, ändern Sie den Verbindungscode so, dass er den richtigen Port enthält:
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
Firewall- oder Netzwerkeinschränkungen:
Stellen Sie sicher, dass Firewall-Einstellungen oder Netzwerkkonfigurationen den Zugriff auf den Datenbankserver nicht blockieren. Stellen Sie sicher, dass Port 8889 für eingehende Verbindungen auf dem Server zulässig ist.
Korrekte Hostnamen-Konfiguration:
Die Verwendung von „127.0.0.1“ für den Hostnamen in MAMP sollte funktionieren, aber Wenn immer noch die Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis“ angezeigt wird, versuchen Sie es stattdessen mit „localhost“. Dieses Problem hängt möglicherweise mit bestimmten Serverkonfigurationen zusammen.
Das obige ist der detaillierte Inhalt vonWarum gibt mein PHP-Code beim Herstellen einer Verbindung zu meiner MySQL-Datenbank „SQLSTATE[HY000] [2002] Verbindung abgelehnt' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!