ERROR! The server quit without updating PID file 原因は異なる二つのver.のMySQL
DBに接続しようとしたらできない。という人のエラーを解決した。
ERROR! The server quit without updating PID file のエラーがターミナルに出力されてたので、まず
mysql.server restart とか sudo mysql.server restart とかやってみるもだめでした。
●原因
$ ls /usr/local/Cellar/mysql*
を、ターミナルでホームディレクトリに移動して入力実行してMysqlのVersionを調べてみたら、MySQL8.0 と MySQL5.6が並存していた。そのせいでどちらのPIDファイル読み込むのかわからなかったり、8.0と5.6の設定ファイルが交錯して読み込まれたりしていたのか。そりゃあ読み込めない。
おそらく、MySQLをインストールする際に、はじめにVersion指定なくインストールしたために最新版の8.0がインストールされ、そのあとにVer指定に気づいて5.6をインストールし直したから、こうなったのかも。と言ってた。
●解決法
使うのがMySQL5.6なので8.0を消そう。
MacでMySQL5.7をアンインストールする https://qiita.com/sato11/items/ba887a5655217f60f2a2
この記事の通りにアンインストールをしました。私が助けた人のMySQLはインストールしたばかりでバックアップするものもなかったので、怖いもの無しで削除していきました。
$ brew remove mysql $ brew cleanup
Homebrewでアンインストールをします。
$ sudo rm /usr/local/mysql $ sudo rm -rf /usr/local/var/mysql $ sudo rm -rf /usr/local/mysql* $ sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist $ sudo rm -rf /Library/StartupItems/MySQLCOM $ sudo rm -rf /Library/PreferencePanes/My*
MySQL関連のファイルを削除していきます。削除する前にディレクトリでlsをしてファイルがあるか確認してから削除しました。怖いもの無しってのは嘘です。
$ rm -rf ~/Library/PreferencePanes/My* $ sudo rm -rf /Library/Receipts/mysql* $ sudo rm -rf /Library/Receipts/MySQL* $ sudo rm -rf /private/var/db/receipts/*mysql*
MySQLの環境設定を削除していく。これも確認してから削除。
PCを再起動してから $ ls /usr/local/Cellar/mysql* をやってみたらMySQL8.0が消えて5.6だけになっていた。あ、じゃあもういいのかなと思って mysql.server restart してみたら、色々ファイルがないから起動できないよ!というエラーが出た。そりゃそうだ、環境設定とかみんな消したんだからPATHがなくなっているはず。
$ brew reinstall mysql@5.6
を実行して再インストールしてみた。
$ mysql --version
で一応Ver角煮。チキンとMySQL5.6担っている。これで大丈夫だろう。
よし、
$ sudo mysql.server start Starting MySQL . SUCCESS!
よし!!できた。
他の記事でも複数のバージョンのMySQLは不具合を起こすとありました。次にこのエラーが来ても冷静に対処ができそうです。
<参考サイト>
https://qiita.com/sato11/items/ba887a5655217f60f2a2 (アンニンストール)
https://qiita.com/owlbeck/items/fff7125d3f56dfde8b50 (Ver確認)
https://teratail.com/questions/133911 (同様エラー)