Laravel 5 PostgreSQL:“数据库 \[postgres\] 未配置。”错误

新手上路,请多包涵

我正在尝试开始使用 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 配置问题。有任何想法吗?我已经搜索了至少一个小时无济于事。

原文由 hodgef 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 891
2 个回答

您必须在 .env 文件中输入您的配置。

如果您所做的配置尚未在 .env 中定义,则只会加载它们

您需要使用 pgsql 而不是 postgres

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

原文由 Fiete 发布,翻译遵循 CC BY-SA 4.0 许可协议

Laravel 有时会缓存你的配置。如果在一切正常的情况下遇到这个问题,请尝试运行

php artisan config:cache

原文由 Bubunyo Nyavor 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏