Another MySQL daemon already running with the same unix socket.
サーバに貯まり続けてた埃が気になってきたので、掃除をすることにした。
掃除をし終えて、電源を入れ直してみたものの、Wordpressが「データベース接続確立のエラー」と表示されて、表示できなくなってしまった。
今回はそれの原因と対策について述べる。
WordPressの「データベース接続確立エラー」は文字通り、WordPress側がデータベースに対して接続に問題がある時に表示される。
大抵のケースではwp-config.phpのユーザー名とパスワードに問題があることを疑うようだが、私のケースでは再起動後にこのエラーに陥ったことを考えると、これは考えにくい。
そこで、念のためMySQLにログインしようとしたら、以下のようになった。
[root]~# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
つまり「/var/lib/mysql/mysql.sockを通してローカルのMySQLサーバに接続出来ません」ということらしい。
もちろん、困った時は再起動。
[root]~# /etc/rc.d/init.d/mysqld restart
mysqld を停止中: [ OK ]
Another MySQL daemon already running with the same unix socket.
mysqld を起動中: [失敗]
まさかの失敗。
今度は、「同じUnixソケットがあるので別のMySQLデーモンが既に動いています」というエラー、クマった(´(ェ)`)
同じような症例がネット上に山積しており、対処法としては以下の手順が挙げられる。
[root]~# mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock.bak [root]~# /etc/rc.d/init.d/mysqld start mysqld を起動中: [ OK ]
mysql.sockをmysql.sock.bakにリネームして退避させると無事にMySQLの起動を確認出来た。
以下、閑話。
やはり定期的に掃除しないと、埃はすごく溜まる。
掃除機で吸い込むのが手っ取り早いが、エアダスターで吹き飛ばした方が良く取れる。
玄関や野外にて一気に吹き飛ばした方が精神衛生上好ましい。
埃は冷却効率を下げてしまい、性能低下や消費電力の増加に繋がる可能性があるため、定期的に掃除するのが大事。
思い出せば、初の自作PCがこのサーバで大学1回の時に組み立てた時から、ほぼ毎日稼働している。
巷ではIntelが中心に展開しているNACなる、小型端末が自作PC界隈で流行っているようで、もし今のサーバが駄目になったら導入してみたい。
参考
WordPressのサイトで「データベース接続確立エラー」が出たら | Delta Geek
[Please help] Another MySQL daemon already running with the same unix socket