Laravel MySQL Spatial extensionを使用するためにMySQL5.6から5.7に変更する必要があった。
まず最初にMysqlのデータベースをバックアップを取っておきます。
今回は全てのデータベースをバックアップしたかったので、下記を実行。
$ mysqldump -u root -x —all-databases > mysqlbk.sql
$ ls mysqlbk.sql
mysqlを停止させます。
$ mysql.server stop
$ sudo rm -rf /usr/local/var/mysql
$ brew uninstall mysql
$ brew install mysql@5.7
$ mysql.server start
...
The server quit without updating PID file
プロセスが残っているからかもしれないので、調べてみる。
$ brew uninstall mysql@5.7
$ ps aux | grep mysql
grepコマンドで調べると、mysql5.6のプロセスがあったので
$ kill -9 対象のPID
で削除します。
$ brew install mysql@5.7
$ vi ~/.zshrc
export PATH=/usr/local/opt/mysql@5.7/bin/:$PATH
$ source ~/.zshrc
$ mysql.server start
自動起動の設定
ln -sfv /usr/local/opt/mysql@5.7/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql@5.7.plist
バックアップしておいたデータを復元する。
$ mysql -u root -p < mysqlbk.sql
$ mysql -u root -p
$ mysql --version