Die Situation ist dies, ich versuche, eine PHP-Verbindung zu verwenden, um meine MySQL-Datenbank zu verbinden, die auf phpmyadmin ist. Nichts Besonderes über die Verbindung, nur um zu sehen, ob die Verbindung erfolgreich ist oder nicht. Ich verwende MAMP die Datenbank zu hosten, die Verbindung I zu verwenden, ich versuche, ist dies:PHP Verbindung fehlgeschlagen: SQLSTATE [HY000] [2002] Verbindung abgelehnt
<?php
$servername = "127.0.0.1";
$username = "root";
$password = "root";
try {
$conn = new PDO("mysql:host=$servername;dbname=AppDatabase", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
?>
Ich habe Postbote worden, um zu sehen zu testen, ob die Verbindung funktioniert, aber ich erhalte erhalten diese Fehlermeldung:
Verbindung fehlgeschlagen: SQLSTATE [HY000] [2002] Verbindung
verweigertBevor ich eine Fehlermeldung wurde empfangen:
Verbindung fehlgeschlagen: SQLSTATE [HY000] [2002] eine solche Datei oder das Verzeichnis
Das lag daran, dass ich den Servernamen auf localhost gesetzt hatte, indem ich dies auf die IP-Adresse änderte, die mir die Verbindung verweigert hatte, und ich habe keine Ahnung, was falsch ist.
Jede Hilfe in diesem Zusammenhang wäre dankbar, Danke.
Es hört sich an, als ob Ihr MySQL-Dienst 127.0.0.1 TCP nicht abhört. Wenn es tatsächlich überhaupt ausgeführt wird, kann es sein, dass es sich um einen lokalen Socket aber nicht um TCP handelt. Macht mysql: localhost; dbname = AppDatabase einen Unterschied? –
... oder war die "keine solche Datei oder Verzeichnis" mit "localhost" passiert? Wenn dies der Fall war, war entweder der Socket-Pfad in der php.ini falsch oder MySQL läuft überhaupt nicht. –