Skip to content

Instantly share code, notes, and snippets.

@lunaluna
Last active June 23, 2020 08:22
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save lunaluna/299b1c3cc23eda635a16d82c9bbe31f4 to your computer and use it in GitHub Desktop.
Save lunaluna/299b1c3cc23eda635a16d82c9bbe31f4 to your computer and use it in GitHub Desktop.
【ERROR】ERROR! MySQL server PID file could not be found!

1.既にprocessが重複して動いていないか確認

  1. mysqlのプロセスを確認
$ ps ax | grep mysql
  1. いくつも出てくるプロセスIDを停止する
$ sudo kill -TERM 4xxxx
$ sudo kill -TERM 4xoxo

2-1. 一度にやるなら

$ sudo kill -9 4xxxx 4xoxo
  1. grep自身のプロセス以外が削除されたことを確認
$ ps ax | grep mysql
4oooo s000  S+     0:00.01 grep mysql
  1. 改めて mysql.server を停止する
$ mysql.server stop

2.portが空いてるか確認

  1. portの状況を確認
$ sudo lsof -i -P | grep 3306
Password:
mysqld    1xxxx       user   28u  IPv4 0x55f4f8ed921e8e91      0t0    TCP localhost:3306 (LISTEN)
  1. 意図していないものが動いていたら停止する
$ sudo kill -TERM 1xxxx
  1. 改めて mysql.server を停止する
$ mysql.server stop

3.ホスト名を確認

Macでは繋げているネットワークが変わると、ホスト名も変わってしまいます。Macのホスト名は ComputerName,HostName,LocalHostName があります。これらが設定されていないと、自動でホスト名を割り当てられてしまう可能性があります。つまり、あるネットワークでmysqlサーバを起動し、別のネットワークでサーバを終了させようとすると、起動した時のPIDファイルが必要になるため、エラーが起きてしまいます。

  1. ホスト名を確認
$sudo scutil --get ComputerName
$sudo scutil --get HostName
$sudo scutil --get LocalHostName
  1. ホスト名を設定
$sudo scutil --set ComputerName rooter
$sudo scutil --set HostName rooter
$sudo scutil --set LocalHostName rooter
  1. 設定した状態で mysql サーバを起動
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment