Ubuntu12.04にMySQL5.6をインストールしてmysqld_safe --user=mysqlしたら、mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended で起動しない。

問題

$mysqld_safe --user=mysql
をした時に、mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended などと出て、異常終了してしまう。

原因

古いパッケージがもっている/etc/mysql/conf.dが邪魔になっていた。

mysql5.6に対し、mysql-commonというのが5.5.34でいつのまにかあった。

$ dpkg -l
ii  mysql               5.6.15              MySQL built using CMake
rc  mysql-common        5.5.34-0ubuntu0.12. MySQL database common files, e.g. /etc/mysql/my.cnf

解決方法

purgeして、/etc/mysql/conf.dも削除すると直る。

$ sudo apt-get purge mysql-common
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージは「削除」されます:
  mysql-common*
アップグレード: 0 個、新規インストール: 0 個、削除: 1 個、保留: 61 個。
この操作後に追加で 0 B のディスク容量が消費されます。
続行しますか [Y/n]? Y
(データベースを読み込んでいます ... 現在 67363 個のファイルとディレクトリがインストールされています。)
mysql-common を削除しています ...
mysql-common の設定ファイルを削除しています ...
dpkg: 警告: mysql-common の削除中、ディレクトリ '/etc/mysql' が空でないため削除できませんでした。

$ cd /etc
$ ls mysql/
conf.d
$ sudo rm -rf mysql/

$ mysqld_safe --user=mysql &
[1] 14881
$ 131222 05:07:57 mysqld_safe Logging to '/vagrant/mysql_data/vagrant-ubuntu-precise.err'.
131222 05:07:57 mysqld_safe Starting mysqld daemon with databases from /vagrant/mysql_data

他のどのパッケージを入れた際に余計なのが混入してきたのかは不明。