私はLaravel + PostgreSQLで始めようとしている データベースチュートリアル に従っています。
残念ながら、データベース構成ファイルを更新してphp artisan migrate
を実行すると、次のエラーが表示されます。
[InvalidArgumentException]
Database [postgres] not configured.
私が困惑しているのは、構成で「postgres」データベースを指定しなかったが、cPanelで設定した別のデータベース、「example_database」と言うことです。
ここに私の/config/database.php
設定のいくつかの関連部分があります:
'default' => env('DB_CONNECTION', 'postgres')
そして、同じファイルのconnections
配列内:
'pgsql' => [
'driver' => 'pgsql',
'Host' => env('DB_Host', 'localhost'),
'database' => env('DB_DATABASE', 'example_database'), // This seems to be ignored
'username' => env('DB_USERNAME', 'example_username'),
'password' => env('DB_PASSWORD', 'example_password'),
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public'
],
私が使用している実際のデータベース資格情報は、SQL Workbenchクライアントで完全に機能しているため、これはLaravel configの問題です。何かアイデアがありますか?役に立つ.
.env
ファイルに構成を入力する必要があります。
作成した設定は、.env
で定義されていない場合にのみロードされます
pgsql
の代わりにpostgres
を使用する必要があります。
DB_CONNECTION=pgsql
DB_Host=localhost
DB_DATABASE=DB_NAME
DB_USERNAME=USER
DB_PASSWORD=PW
Laravelは時々あなたの設定をキャッシュします。すべてが正常に見えるときにこの問題に遭遇した場合は、実行してみてください
php artisan config:cache