Laravelでのデータベース設定の正しい手順をメモしておく

僕がPHPフレームワークにLaravelを使ってます。

便利な反面、設定に手こずることも度々です。

今回遭遇したのは次の問題

「データベース設定が上手くできない!」

この設定方法が分からなかったので、
LaravelでのDB設定の正しい手順をメモしておきます。

1.まず.envファイルからデータベース設定変更

この.envファイルは以下のパスにあります。

▼ このパスにある(適宜読み替え)

このファイルは後述のdatabase.phpにおけるデフォルトのデータベース接続情報を保有しているファイルです。(データベースのみでなく、Laravelの環境変数の設定用)

そして以下のような部分を探してみてください。

▼ このようなデータベース設定があるはず

なんかデフォルト設定が書いてあります。当然これだとデータベースに接続できないので、例えば以下のように正しいデータベース接続情報に変更します。

▼ このように変更修正

正直言って、この.envファイルでのDB設定はあまり重要ではありません。次に紹介するdatabase.phpの設定の方が柔軟に対応できます。

この .env ファイルはデータベースのみならず、全てのLaravel設定の起点になります。この設定が肝心なので忘れてはいけません。

2.次にdatabase.phpでデータベース接続情報を設定

お次はdatabase.phpを開いてください。

▼ こちらのパスにあるファイル

このファイルは文字通りデータベースに関するアレコレ(主にDB接続情報)を設定変更できるファイルです。開くと色々書いてあります。

その中で次の部分がmysql接続情報です。

▼ デフォルトだと次の内容になってる

ここを正しいデータベース接続情報に変更します。

▼ このように変更修正する

絶対に変更すべき箇所は次の3つ

  • DB_DATABASE
  • DB_USERNAME
  • DB_PASSWORD

それから 'collation' => 'utf8mb4_unicode_ci'  という部分がありますが、これが照合順序です。こちらもデータベースの照合順序に変更してください。

あとは多分変更しなくてOK。そのままで大丈夫です。

最後にデータベース設定をmigrateする

最後に次のようなコマンドを実行

これで次のような表示になれば成功です。

ちなみに僕の環境での表示例なので参考までに・・・とりあえず succefully と出ていれば成功です。(エラーが出ていなければOK)

もし migrateでエラーが出るならキャッシュ削除

この時エラーが出ることがあります。

▼ 例えばこういう感じのエラー

そういう場合は次のコマンドを実行してください。

▼ 設定キャッシュを削除

▼ キャッシュも削除

これで再び php artisan migrate してみると上手くいくこともあります。もちろんデータベース接続情報が間違っていないかの確認もお忘れなく・・・

Shareこの記事をシェアしよう!

Commentsこの記事についたコメント

2件のコメント
  • らいと

    初めまして。環境構築にて手詰まりで色々調べていたところ、こちらのサイトを拝見させていただきました。
    DBから始まるデータベース設定で、そのファイルまでは辿り着けるのですが、DBを正しい接続情報に変更する方法がわかりません。どのように編集するのでしょうか。

    Mac OS使用
    MAMPのMySQLからLaravelのenvデータベース設定で止まっています

    12月 16, 2022 9:55 pm
    • ぴー助

      コメントありがとうございます。

      総合的な開発環境(MAMP)を用意されているなら、その環境でのDB接続情報を調べればいいだけです。その方法はXAMPPだったりMAMPのような環境ごとに異なるため、ご自身で調べてみてください。記事内で書いたように【データベース名】、【DBユーザー名】、【DBパスワード】が編集すべき箇所です。

      12月 17, 2022 8:54 am

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください