Dépannage de l'erreur « Échec de la connexion : SQLSTATE[HY000] [2002] Connexion refusée »
Lorsque vous rencontrez l'erreur « Échec de la connexion : SQLSTATE[ HY000] [2002] Connexion refusée" lors de la connexion à la base de données PHP MySQL, plusieurs facteurs peuvent être pris en compte. enquêter.
Dans le scénario donné, le problème était lié au numéro de port incorrect utilisé pour la connexion. La configuration initiale utilisait « localhost » comme nom de serveur, ce qui correspondait au port 8888 sur MAMP. Cependant, la base de données écoutait sur le port 8889. En modifiant le code pour spécifier explicitement le port 8889, la connexion a été établie avec succès :
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
Il est important de noter que l'utilisation de "localhost" comme nom de serveur peut toujours entraîner dans l'erreur "Aucun fichier ou répertoire de ce type" si le socket MySQL n'est pas correctement configuré sur le système. Dans de tels cas, il est recommandé d'utiliser l'adresse IP explicite de la machine hôte.
Par conséquent, les modifications suivantes garantissent une connexion réussie sans rencontrer les erreurs « Connexion refusée » ou « Aucun fichier ou répertoire de ce type » :
$servername = "127.0.0.1"; $port = "8889"; ... $conn = new PDO("mysql:host=$servername;port=$port;dbname=AppDatabase", $username, $password);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!