バージョン
- Ruby 2.6.3
- Rails 6.0.2.2
- Homebrew 2.2.14
- MySQL 8.0.19
mysql.server startをするとエラーが出る!
$ mysql.server start
Starting MySQL
. ERROR! The server quit without updating PID file (/usr/local/var/mysql/mba.pid).
PIDファイル?がねえよ!
と怒られた。
↓の記事を参考に進めてみる
https://qiita.com/_natsu_no_yuki_/items/ae4c94187093e4ab3cdc
PIDファイルをチェック↓
mbaのところは自分のパソコンの名前が入るよ
(僕はMacBookAirを使ってるので略してmbaにしてます。)
$ ls -la /usr/local/var/mysql/mba.local.pid
ls: /usr/local/var/mysql/mba.local.pid: No such file or directory
ファイルがねえよ!って言われてるみたい。
#解決策
うーん、解決しなかったので他の記事に。↓
https://qiita.com/kazu_wsx/items/bb787e9e4e919da03705
この記事のおかげでできました!ありがとう!
##【注意!!】
そのまま下の解決手順を実行するとmysqlのデータが削除されてしまいます!
必ずバックアップを行ってください!
僕はアプリ作成段階だったので消えるデータがなくスキップ。
以下、上の記事から拝借。
$ brew services stop mysql
でmysqlを一旦停止
$ cp -pr /usr/local/Cellar/mysql /適当な場所/mysql_backup
により、mysqlのデータバックアップを行ってください。
##local配下のmysqlを全て削除
brew uninstall mysqldaだと残っちゃうものがあるみたいです。
local配下のmysqlを全て削除する。
$ rm -rf /usr/local/mysql
$ rm -rf /Library/StartupItems/MYSQL
$ rm -rf /Library/PreferencePanes/MySQL.prefPane
$ rm -rf /Library/Receipts/mysql-.pkg
$ rm -rf /usr/local/Cellar/mysql*
$ rm -rf /usr/local/bin/mysql*
$ rm -rf /usr/local/var/mysql*
$ rm -rf /usr/local/etc/my.cnf
$ rm -rf /usr/local/share/mysql*
$ rm -rf /usr/local/opt/mysql
##再度MySQLをインストール!
brew install mysql
$ brew install mysql
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
contentful-cli kops lmdb mupdf-tools
==> Downloading https://homebrew.bintray.com/bottles/mysql-8.0.19.catalina.bottle.2.tar.gz
Already downloaded: /Users/asatokensei/Library/Caches/Homebrew/downloads/16119cce36310b0d4f34d54a3a0dd701d068e946c1d4bd4c7bb409b9f9899760--mysql-8.0.19.catalina.bottle.2.tar.gz
==> Pouring mysql-8.0.19.catalina.bottle.2.tar.gz
Warning: This keg was marked linked already, continuing anyway
==> /usr/local/Cellar/mysql/8.0.19/bin/mysqld --initialize-insecure --user=asatokensei --b
==> Caveats
We've installed your MySQL database without a root password. To secure it run:
mysql_secure_installation
MySQL is configured to only allow connections from localhost by default
To connect run:
mysql -uroot
To have launchd start mysql now and restart at login:
brew services start mysql
Or, if you don't want/need a background service you can just run:
mysql.server start
==> Summary
🍺 /usr/local/Cellar/mysql/8.0.19: 286 files, 289.2MB
んー、、Warning: This keg was marked linked already, continuing anywayって出てるけどとりあえずスルー。
##パスを通す
$ echo 'export PATH="/usr/local/opt/mysql/bin:$PATH"' >> ~/.bash_profile
中身を見たい時はこのコマンド↓
$ vi ~/.bash_profile
##サーバーを立ち上げる
mysql.server start
ついにサーバー立ち上げ!!
$ mysql.server start
Starting MySQL
. SUCCESS!
成功ーーー!!!!
やったね!