エラー状況
デプロイに際してSQLiteからMySQLに切り替え、ローカルでサーバーを立ち上げようとした際にエラー発生。
解決方法
いっぺんMySQLをアンインストール後、改めてインストール。で解決。
エラー発生から解決までの道のり
ローカルでサーバー立ち上げようとしたら、
Mysql2::Error::ConnectionError: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
というエラーが。
ググってみると
/tmp/mysql.sock
ファイルがない可能性が。
その場合はファイルを作成する。
$ sudo touch /tmp/mysql.sock
2.config/database.yml
内で socket
の指定先が違っている可能性。
default: &default
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: root
password:
socket: /tmp/mysql.sock # ←ここの部分
の部分を
socket: /var/lib/mysql/mysql.sock
に変更でなおった。という記事が。
上記、1、2共に試してみる。
そして、rails db:create
してみると、
.. ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXXXXXXX.local.pid).
というエラーが。
今度は、上記のエラー文でググってみる。
と、別の記事で
一度、mysqlを削除、インストールし直したらなおったという記事を発見。
別にDB削除しても構わないので、やってみます。
で、mysqlスタートしてみる。
$ mysql.server start
Starting MySQL .
SUCCESS!
成功したーー!!
改めて
$ rails db:create
$ rails db:migrate
で解決しました。
ここら辺のエラー解決は記事がたくさんあるので、初学者にとって助かりました(泣)
参考記事