この記事などにあるように、/usr/local/var/mysql以下をchownしたものの、同じエラーが出続けていました。
$ sudo chown -R mnmandahalf /usr/local/var/mysql/
Password:
$ mysql.server start
Starting MySQL
... ERROR! The server quit without updating PID file (/usr/local/var/mysql/Mnmandahalfs-MacBook-Pro.local.pid).
煮詰まったので何気なくpidファイルを作って、再度サーバーを立ち上げてみたところ、、、
$ touch /usr/local/var/mysql/Manamis-MacBook-Pro.local.pid
$ mysql.server start
Starting MySQL
.rm: /tmp/mysql.sock: Permission denied
2017-10-02T14:50:19.6NZ mysqld_safe Fatal error: Can't remove the socket file:
/tmp/mysql.sock.
Please remove the file manually and start /usr/local/Cellar/mysql/5.7.19/bin/mysqld_safe again;
mysqld daemon not started
ERROR! The server quit without updating PID file (/usr/local/var/mysql/Mnmandahalfs-MacBook-Pro.local.pid).
エラーメッセージが変わった。 /tmp/mysql.sockの権限を確認したところ、所有ユーザーがrootになっていました。
$ ls -la /tmp/mysql.sock
-rw-r--r-- 1 root wheel 0 10 2 22:31 /tmp/mysql.sock
メッセージの通りにmysql.sockを削除し、mysqld_safeを実行。
$ sudo rm /tmp/mysql.sock
$ /usr/local/Cellar/mysql/5.7.19/bin/mysqld_safe
2017-10-02T14:51:39.6NZ mysqld_safe Logging to '/usr/local/var/mysql/Mnmandahalfs-MacBook-Pro.local.err'.
2017-10-02T14:51:40.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
別プロセスからmysql.sockの権限を確認。
$ ls -la /tmp/mysql.sock
srwxrwxrwx 1 mnmandahalf wheel 0 10 2 23:52 /tmp/mysql.sock
多分この権限と/usr/local/var/mysql/以下の権限を最初に揃えておけばよかった?
mysqldも立ち上がった模様。
$ ps aux | grep mysql
mnmandahalf 72116 0.0 0.0 2435000 1228 s004 R+ 11:55PM 0:00.01 grep mysql
mnmandahalf 72096 0.0 2.1 2836108 177372 ?? S 11:51PM 0:00.42 /usr/local/Cellar/mysql/5.7.19/bin/mysqld --
basedir=/usr/local/Cellar/mysql/5.7.19 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.7.19/lib/plugin --
log-error=Mnmandahalfs-MacBook-Pro.local.err --pid-file=Mnmandahalfs-MacBook-Pro.local.pid
manami 72024 0.0 0.0 2438664 1972 ?? S 11:51PM 0:00.03 /bin/sh
/usr/local/Cellar/mysql/5.7.19/bin/mysqld_safe
ログインできました。
$ mysql -u root -p
Enter password: