質問: migrations) In Connector.php line 67: SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using password: NO) ``` 現状は ・環境毎に設定ファイルは切り分けている 例:local, development, staging, production, testing ・DBは複数に分けている 例:mst, trn, log, admin で、database.phpはconfig/各環境名 以下にコピーして配置しています。 現在はlocal環境で実行していますので、config/local/database.phpを見て欲しいのですが forge@localhostとなっているところから推測するに、config直下のdatabase.phpを見てDBへアクセスしようとしている模様です。 直下のdatabase.phpは一切触れたくなく、設定はデフォルトのままです。 'default' => env('DB_CONNECTION', 'mysql'), にあることから、直下のmysqlを ``` 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), から 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'DB名'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', 'root'), ``` に変更したところインストールが通りました。 上記ケースの場合に、デフォルトのdatabase.phpを見ずにインストールを通すにはどのように設定すればよろしいでしょうか? また、migrationする際にも同様のことが発生していたので、 ``` php artisan migrate --path=database/migrations/mst --database=mst php artisan migrate --path=database/migrations/trn --database=trn ``` というように実行していますが、こちらの手法は正しいでしょうか。 情報の過不足等ございましたらご指摘頂ければと思います。 上記解決策をご教示頂ければと思います。 よろしくお願いいたします。
回答: config/local/は遥か昔Laravel4時代のやり方なので今はそんなことしません。 全部`.env`で設定。 DBまで分けてるのはなぜそんなことを...。 普通は別テーブルで十分では。 検索して変な情報を見てるから間違える。