読者です 読者をやめる 読者になる 読者になる

homebrew経由で入れたMySQLを再起動すると複数プロセスが立ち上がる問題

homebrewを使ってインストールしたMySQLに対して以下のような再現性のあるバグがあるようだ。僕のmacだけかと思っていたが、友人も全く同じ現象に遭遇したらしい。
まず、起動中のmysqlサーバを再起動する

$ mysql.server restart
Shutting down MySQL
. SUCCESS! 
Starting MySQL
. SUCCESS!

正常に再起動できたように見える。しかし、この状態でmysqlに接続しようとしても

$ mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

と言われる。だが、

$ ls /tmp/ | grep mysql
mysql.sock=

ここで、おもむろにps -A | grep mysqlでプロセスを表示してみると、何故かmysqlが2つ起動されている。どうやらシャットダウンに失敗した、ゾンビが残ってしまっているようだ。
この場合ゾンビになっている方のプロセスをkillコマンドで殺してやることで治すことができる。どっちか分からなければ、両方殺せばいい。