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 (同様エラー)