LoginSignup
0
0

More than 3 years have passed since last update.

The server quit without updating PID fileを解決する【MySQLエラー】

Last updated at Posted at 2021-02-21

はじめに

mysql.server startmysql.server restartの際に出るエラー、

ERROR! The server quit without updating PID file

このエラーにかなり手こずりました。

・PCを再起動する
・touchコマンドでPIDファイルを作る
・ファイルの権限を変更する
・MySQLをアンインストールしインストールし直す

ググッて調べた上記の方法がどれも上手くいかず途方にくれていましたが、
何とか解決できたので忘備録を兼ねて解決方法をまとめておきます。

解決方法

まずはエラー解決の過程でMySQLのインストールとアンインストール繰り返してしまい、
MySQLのpathを増やしすぎてしまったので、増えすぎたpathを整理する。

% cat .zshrc
#.zshrcファイルの中身を表示

実行結果


eval "$(rbenv init -)"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
eval "$(nodenv init -)"
export PATH="/usr/local/opt/node@14/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"

MySQL5.6とMySQL5.7のpathが多すぎるので整理する。

VSコードを使ってpathを整理する時は新規ウィンドウを立ち上げ、
「コマンド+O」でホームディレクトリを選択。
ホームディレクトリの「.zshrcファイル」の中身を編集しMySQLのpathを一つに減らす。

.zshrcファイル編集後

eval "$(rbenv init -)"
eval "$(nodenv init -)"
export PATH="/usr/local/opt/node@14/bin:$PATH"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"

その後、下記のコマンドで編集を保存する。

% source .zshrc

次に不要なプロセスを確認します。
varディレクトリに移動しpsコマンドを実行。

var % ps -e | grep mysql 

実行結果

534 ??         0:00.03 /bin/sh /usr/local/opt/mysql@5.7/bin/mysqld_safe --datadir=/usr/local/var/mysql
638 ??         0:11.43 /usr/local/opt/mysql@5.7/bin/mysqld --basedir=/usr/local/opt/mysql@5.7 

インストールしているMySQLのバージョンは@5.6なのに、@5.7のプロセスが残っていました。
これがエラーの原因であり、これをkillしてあげると解消されるはず。

var % kill 534
var % kill 638

これで不要なプロセスをkillすることができました。

% mysql.server start 
Starting MySQL
. SUCCESS! 

改めてmysql.server startすると上手く行きました。

終わりに

MySQLは予期せぬエラーが多いとのことで、
MtSQLが立ち上がらない系のエラーはpathやプロセスをチェックするのがいいのかもしれません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0