Maison >développement back-end >tutoriel php >Pourquoi ma connexion MySQL échoue-t-elle avec « Aucun fichier ou répertoire de ce type » dans le terminal ?

Pourquoi ma connexion MySQL échoue-t-elle avec « Aucun fichier ou répertoire de ce type » dans le terminal ?

DDD
DDDoriginal
2024-12-11 08:16:10505parcourir

Why Does My MySQL Connection Fail with

Connexion via un socket Unix : résolution de l'erreur « Aucun fichier ou répertoire de ce type »

Rencontre de l'erreur « Avertissement : mysql_connect() : [2002 ] Aucun fichier ou répertoire de ce type (tentative de connexion via unix:///tmp/mysql.sock) dans "lors de la tentative de connexion à une base de données MySQL à partir du Le terminal peut être déroutant. Bien que le script puisse fonctionner correctement lorsqu'il est exécuté à partir d'un navigateur, le terminal rencontre des problèmes.

Comprendre le problème

Sur macOS, les configurations MySQL peuvent parfois mal identifier l'emplacement du fichier de socket. Le socket peut exister dans /tmp/mysql.sock ou /var/mysql/mysql.sock, mais les applications peuvent le rechercher à un emplacement incorrect.

Résoudre l'erreur

Heureusement, la solution est simple et implique la mise en place d'un lien symbolique. Si /tmp/mysql.sock est présent mais /var/mysql/mysql.sock est absent, exécutez les commandes suivantes :

cd /var
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock

À l'inverse, si /var/mysql/mysql.sock existe mais /tmp /mysql.sock ne le fait pas, utilisez ces commandes :

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

En créant un lien symbolique, le Mac peut trouver le socket requis, peu importe de quel endroit il recherche.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn