なんかUbuntuのVMを強制終了させてMySQLが起動できなくなった話
おいぃ! /etc/init.d/mysql start しても立ち上がらないぞ!!!!
電車のなかでMacBookAirでUbuntuのVM立てて作業しようとしたんだけど、なんかどっかで強制終了かスリープさせて移動しちゃったら mysql も mysqld も立ち上がらなくなった。
Ubuntuは12.04
トラブルシューティング
正確には htop で確認したぎり、一瞬立ち上がってすぐに消える感じ?たぶん daemon あたりがヘンになっているっぽい。エラーメッセージは以下
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
なるほど、なんかプロセスを立ち上げるためのソケットがなんかこうつながらないと。で、実際その mysql.sock を探したけどなかった。
結局全部消して再インストールして無理やり直した
参考::手帖
参考::Ubuntu日本語フォーラム / MySQLが起動できなくなりました。
daemonが起動していないのは上記URLのとおり調べた
ps aux | grep mysql
うん、ないね。
なので強制的に消して再インストールした。参考記事 Ubuntu日本語フォーラム / MySQLが起動できなくなりました。
sudo apt-get remove --purge mysql-server* mysql-common sudo apt-get autoremove –purge sudo rm -r /etc/mysql sudo rm -r /var/lib/mysql sudo apt-get install mysql-server
力技だ。
記事かいてて気づいた
Ubuntu日本語フォーラム / MySQLが起動できなくなりました。
この問題は自分もハマったのですが、Precise に搭載されている MySQL のバージョンだと
default-character-set というオプションは廃止になり、このオプションを記述していると、
起動時にエラーを吐いてこけます。新しいバージョンの MySQL では代わりに character-set-server オプションを使用してください。
Twitter @epii_jp
そうだったのか……記事は下にも続いていて、もっとちゃんと調べればよかったかもしれない。