web-dev-qa-db-ja.com

MySQLデーモンロックの問題

昨夜、MySQLサーバーが突然ダウンしました。再起動しようとすると(_service mysql restart_-私はルートです)、単にハングします。 _mysql -u root -p_コマンドで、ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)を取得します。次に、デーモンを手動で開始しようとしました(mysqld)。プロンプトは約2秒間ハングしてから戻ります。エラーログを詳しく調べると、次のことがわかりました。

_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_

次に、_chown mysql /var/run/mysqld_、_chmod -R 775 /var/run/mysqld_、_apt-get install mysql-community-server --reinstall_を試しました。運がありません。

私は周りを見回しましたが、解決策が見つかりませんでした。ここで何か助け?

注:MySQL Community Server 5.7.10でDebian 8(Jessie)を実行しています

20
SamboyCoding

私はこれに出くわしました。 mysqlのインストールは少し奇妙で、/ var/run/mysqld /がありませんでした

MySQLdはソケットとロックファイルを作成しようとしましたが、親ディレクトリがありませんでした。私は単にディレクトリを作成しました

Sudo mkdir /var/run/mysqld

mysqlにそれをchowned

Sudo chown mysql:mysql /var/run/mysqld

その後、mysqldを正常に起動できました。

52
jorfus

今日、Ubuntuサーバーで同じ問題が発生しました。しかし、解決策はロックを無効にすることではないと思います。私の場合、システムログ(dmesg | tailおよびjournalctl -xe)それは防具の問題であり、解決策が見つかることを明らかにしました この質問で

6
affitz

次のエラーが発生しました

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

このエラーは、サーバーのスペースが100%使用されていなかったために発生しました(以下を参照)

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

適切な権限を持つフォルダーが存在することを確認してください

chown mysql:mysql /var/lib/mysql/

そして、mysqlサーバーが新しいファイルを生成できるように、必ずファイルを削除してください

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

また、ディスク容量が不足している可能性があります。

0
4n70wa

以下のコマンドは私のために働いた。

Sudo mkdir /var/run/mysqld

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