web-dev-qa-db-fra.com

Problème de verrouillage de démon MySQL

Hier soir, mon serveur MySQL est tombé en panne de façon inattendue. Lors d'une tentative de redémarrage (avec service mysql restart - Je suis root), il se bloque simplement. Avec la commande mysql -u root -p, J'obtiens ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2). J'ai ensuite essayé de démarrer le démon manuellement (mysqld). L'invite se bloque pendant environ 2 secondes, puis revient. En examinant de plus près les journaux d'erreurs, j'ai obtenu:

2016-01-22T19:18:32.399584Z 0 [ERROR] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.

2016-01-22T19:18:32.399622Z 0 [ERROR] Unable to setup unix socket lock file.

2016-01-22T19:18:32.399646Z 0 [ERROR] Aborting

J'ai ensuite essayé chown mysql /var/run/mysqld, chmod -R 775 /var/run/mysqld Et apt-get install mysql-community-server --reinstall. Pas de chance.

J'ai regardé autour de moi et je n'ai pas trouvé de solution. Une aide ici?

Remarque: j'utilise Debian 8 (Jessie) avec MySQL Community Server 5.7.10

20
SamboyCoding

Je suis juste tombé sur ça. L'installation de mysql était un peu bizarre et manquait/var/run/mysqld /

MySQLd tentait de créer le fichier socket et verrou, mais le répertoire parent était manquant. J'ai simplement créé le répertoire

Sudo mkdir /var/run/mysqld

l'a réprimandé à mysql

Sudo chown mysql:mysql /var/run/mysqld

J'ai ensuite pu démarrer mysqld normalement.

52
jorfus

J'ai rencontré le même problème aujourd'hui sur mon serveur Ubuntu. Mais je pense que la solution n'est PAS de désactiver le verrouillage. Dans mon cas, un regard sur le journal système (dmesg | tail et journalctl -xe) a révélé qu'il s'agit d'un problème d'apparmeur et que la solution peut être trouvée dans cette question .

6
affitz

J'ai eu l'erreur suivante

[ERROR] Unix socket lock file is empty /var/lib/mysql/mysql.sock.lock.

Cette erreur est survenue car mon serveur manquait d'espace 100% d'utilisation (voir ci-dessous)

Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/xvda1      41153856 28531384  12187364  100% /

Assurez-vous que le dossier existe avec les autorisations appropriées

chown mysql:mysql /var/lib/mysql/

Et assurez-vous de supprimer le fichier afin que le serveur mysql puisse en générer un nouveau

rm /var/lib/mysql/mysql.sock.lock
0
David Raleche

Peut également manquer d'espace disque.

0
4n70wa

Les commandes ci-dessous ont fonctionné pour moi.

Sudo mkdir /var/run/mysqld

Sudo chmod 777 /var/run/mysqld -R
0
Prasath Rajan