Laravel 5 + PostgreSQL: & quot; База данных [postgres] не настроена. & Quot; ошибка

Я пытаюсь начать работу с 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. Есть идеи? Я искал около часа, но безрезультатно.

11

Решение

Вы должны ввести свою конфигурацию в .env файл.

Конфигурация, которую вы сделали, будет загружена, только если она еще не определена в .env

Вам нужно использовать pgsql вместо postgres,

DB_CONNECTION=pgsql
DB_HOST=localhost
DB_DATABASE=DB_NAME
DB_USERNAME=USER
DB_PASSWORD=PW
28

Другие решения

Других решений пока нет …