PythonとMySQLを連携している過程で、以下のコマンドで、MySQLをスタートしようとしたところ、
mysql.server start
以下のエラーがでました。
Starting MySQL
... ERROR! The server quit without updating PID file (/usr/local/var/mysql/xxxnoMacBook-Air-3.local.pid).
エラーの対処法にかなり時間がかかったので、対処法を記載しておきます。
目次
エラーの内容
Starting MySQL
... ERROR! The server quit without updating PID file (/usr/local/var/mysql/xxxnoMacBook-Air-3.local.pid).
エラーの内容を読み込みます。(’xxxnoMacBook-Air-3’のところはuserの名前です。)
$ tail -f /usr/local/var/mysql/xxxnoMacBook-Air-3.local.err
以下がエラーの部分の抜粋です。
2020-05-16T05:58:51.339346Z 0 [ERROR] [MY-010262] [Server] Can't start server: Bind on TCP/IP port: Address already in use
2020-05-16T05:58:51.339792Z 0 [ERROR] [MY-010257] [Server] Do you already have another mysqld server running on port: 3306 ?
2020-05-16T05:58:51.340665Z 0 [ERROR] [MY-010119] [Server] Aborting
中段に、Do you already have another mysqld server running on port
と出ているので、別のmysqlが何やら動いているとのメッセージ。
その真偽をチェックします。
$ ps ax | grep mysql
すると、こんな表示。確かに何かが動いているらしい。
30679 ?? Ss 0:00.86 (以下省略)----
ダメだったやり方
killします。(結果的には無駄でした。※正解はこの下へ)
$ sudo kill -9 30679
うーん、数字が変わっただけで、何かが解決した気がしない。
30684 ?? Ss 0:00.65(以下省略)----
再びチェックします。
$ mysql.server start
やはりエラーが出ます。
Starting MySQL
... ERROR! The server quit without updating PID file (/usr/local/var/mysql/
再びチェックします。
$ ps ax | grep mysql
以下の表示がでます。
30872 ?? Ss 0:00.72
うまくいった対処法
killします。さっきとは微妙に違うコマンドです。(こっちが正解だった!)
$ sudo kill -TERM 30872
再び、再びチェックします。
$ ps ax | grep mysql
何やら成功したらしい!
30880 s000 S+ 0:00.01 grep mysql
MySQLをスタートさせます。
$ mysql.server start
やった!ついに成功!
コメント