【Laravel】DB接続がうまくいかない時に確認すること

DB接続がうまくできているか

DB接続がうまくできているかを確認するためには、以下のコマンドでチェックできる。 (接続をチェックするためのコマンドではないのだが)

php artisan migrate:status

これで、テーブルの一覧が出てこずに、コンソールにエラーの旨が出る場合は、接続が失敗している。

うまくいかないときに確認すること

  • PHP7.xとmysql8.xの互換性がとれないためエラーを起こす。 mysql8に上がってからデフォルトの認証方法が変わったみたいでエラーを起こす。

blog.websandbag.com

SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
PDO::__construct(): php_network_getaddresses: getaddrinfo failed: Name or service not known
  • docker-comopseのボリュームが過去に使ったものを参照している 以下で完全に消せる。 docker volume ls で既存のボリューム一覧を確認することができるので、一度確認をしてみると良い。
docker-compose rm -v
docker-compose down -v
docker volume prune
  • そもそもそのDBに接続できるか

MySQLworkbenchやSequelPro、phpmyadminで接続しようとしているDBに接続できるかを試してみる。