web-dev-qa-db-fra.com

Impossible de se connecter au serveur MySQL local via le socket '/tmp/mysql.sock' (2)

J'ai installé le serveur MySQL et j'essaie de me connecter, mais j'obtiens l'erreur:

    Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

J'ai vérifié mon répertoire/tmp et il n'y a pas mysql.sock. Je ne trouve nulle part mysql.sock. J'ai lu qu'il pourrait être dans

    /var/lib/mysql/mysql.sock

Mais j’ai vérifié là aussi et il n’ya même pas de répertoire mysql, seulement quelques trucs postfixés dans/lib. Quelqu'un pourrait-il m'aider avec ce problème?

130
user3344382

Essayez de démarrer le serveur MySQL:

mysql.server start

248
Casey Robinson

J'ai eu la même question après la mise à jour de OS X Yosemite. La solution est simple. Vérifiez les préférences système -> mysql, l'état était STOP. Il suffit de le redémarrer et cela fonctionne bien sur mon mac maintenant.

55
keren

Pour MAMP

ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock

De https://coderwall.com/p/w5kwzw/solved-can-t-connect-to-local-mysql-server-through-socket-tmp-mysql-sock

UPDATE: Chaque fois que mon ordinateur redémarre, je dois entrer cette commande et j'ai donc créé un raccourci.

Procédez comme suit dans le type de terminal:

~: vi ~/.profile

Ajouter

alias ...='source ~/.profile'
alias sockit='Sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock'

Sauver.

En type de terminal:

~: ... pour obtenir la configuration .profile.

Maintenant, dans le terminal, vous pouvez simplement taper

~: sockit
42
Bryan

La commande suivante a résolu mon problème:

Sudo chown -R _mysql:mysql /usr/local/var/mysql

Sudo mysql.server start
30
Nikesh Suwal

Après avoir essayé toutes les solutions, cela ne fonctionnait que pour moi après avoir spécifié l'hôte.

mysql -u root -p -h127.0.0.1

en demandant un mot de passe

Enter password:

appuyez sur Entrée

et cela fonctionnera si tout va bien comme ci-dessus.

10
Hos Mercury

Après avoir résolu mon problème:

Vérifiez où se trouve votre serveur MySQL en train d'écouter: netstat -nlp S'il est en train d'écouter TCP, utilisez 127.0.0.1 lors de la connexion à la base de données au lieu de "localhost"

Vérifiez la documentation MySQL ici

8
Umesh

Dans votre fichier de configuration mysql, présent dans /etc/my.cnf, apportez les modifications ci-dessous puis redémarrez mysqld dameon process.

[client]
socket=/var/lib/mysql/mysql.sock

Vérifiez également ce fil connexe

Impossible de se connecter au serveur MySQL local via le socket '/tmp/mysql.sock

8
Rahul

Essayez ceci cela a fonctionné pour moi.

Sudo /usr/local/mysql/support-files/mysql.server start

7
vasanth vasu

Après avoir lutté pendant des heures, la seule chose qui a fonctionné était

Sudo mysql.server start

Faites ensuite une installation sécurisée avec

mysql_secure_installation 

Puis connectez-vous à la base de données via

mysql -uroot -p

Mysql est installé via homebrew et la version est

Server version: 5.7.21 Homebrew

Spécifier la version peut être utile car la solution peut être différente en fonction de la version.

5
Krishnadas PC

Si vous utilisez XAMPP sous Mac OS X et avez installé MySQL avec Homebrew, vous risquez de rencontrer ce problème. Dans la fenêtre du gestionnaire XAMPP, accédez à Gérer les serveurs et sélectionnez MySQL, puis cliquez sur Configurer et ouvrez le fichier de configuration. Vous y trouverez le chemin du fichier de socket, le chemin dans la configuration de votre hôte MySQL et il devrait fonctionner.

C'est quelque chose comme ça:

...
[client]
#password   = your_password
port        = 3306
socket      = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
...

puis, par exemple à Django:

...    
DATABASES = {
        "default": {
            "ENGINE": "Django.db.backends.mysql",
            "NAME": "database_name",
            "USER": "user",
            "PASSWORD": "password",
            "Host": "/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock",
            "PORT": "",
        }
    }
...

J'espère que cela t'aides.

4
Cairo

J'ai passé beaucoup de temps à faire cela. Je veux mettre mon application Django sur mon serveur et quand je lance python manage.py migrate j'ai rencontré cette question.

Et!! J'ai mis ceci ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock Cela a fonctionné finalement!

0
LittleCabbage