Impossible de se connecter au serveur MySQL via Socket : une erreur PHP courante
Lorsque vous essayez d'établir une connexion à une base de données MySQL à l'aide de PHP mysqli, vous pouvez rencontrer l'erreur suivante :
mysqli::mysqli(): (HY000/2002): Can't connect to local MySQL server through socket 'MySQL' (2)
Cette erreur suggère que la bibliothèque client MySQL tente d'utiliser un socket de domaine Unix pour la connexion, plutôt qu’une connexion TCP/IP. Cependant, le socket nommé « MySQL » n'existe pas ou est inaccessible.
Comprendre l'erreur
Lorsque vous utilisez « localhost » comme nom d'hôte pour la connexion MySQL, la bibliothèque cliente essaie automatiquement de se connecter via un socket Unix. Il s'agit d'une méthode de connexion plus rapide et plus sécurisée sur les systèmes basés sur Unix. Cependant, si le socket n'est pas correctement configuré ou n'existe pas, la connexion échouera.
Façons de résoudre le problème
Pour résoudre ce problème, vous pouvez :
$db = new MySQLi('localhost', 'kamil', '***', '', 0, '/var/run/mysqld/mysqld.sock');
En implémentant l'une de ces solutions, vous pouvez vous assurer que la connexion MySQL est établie correctement, éliminant ainsi l'erreur « Impossible de se connecter au serveur MySQL local via socket ».
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!