php - 全新安装的 laravel 项目无法访问 postgresql 数据库,但可以执行 php migrate

标签 php laravel postgresql ubuntu

我已经在 2 天前问过这个问题,这里是链接 Got "password authentication failed for user" but in pgAdmin 3 its working

但我仍然没有得到解决问题的答案。

于是尝试新建一个laravel项目,然后编辑.env文件,检查php artisan migrate是否可以运行。

在我运行 php artisan migrate 之后,它正在运行,所以这意味着我对 PostgreSQL 数据库的凭据是正确的,对吧?如果不是,它会告诉你用户“postgres”的密码验证失败,但我根本没有收到任何错误,所以我继续下一步。现在,在我确定一切正常后,我运行 php artisan make:auth,它成功了,没有任何错误,所以我转到网络浏览器,然后运行网站,我点击了 register /login 按钮,填写字段,然后提交,噩梦又发生了

我从网站上得到这条信息

SQLSTATE[08006] [7] FATAL: password authentication failed for user "postgres" FATAL: password authentication failed for user "postgres" (SQL: select count(*) as aggregate from "users" where "email" = test@test.com)

尽管 php artisan migrate 运行得非常好,但我不知道为什么会这样。以前有人遇到过这个问题吗?或者为什么会这样?

我已经搜索了所有可能解决这个问题的关键字,但我找不到答案,这真的让我感到压力很大。

对于我正在使用的信息:

PostgreSQL 9.6.8

Laravel 5.6

Ubuntu 17.10

已编辑:这是我的 pg_hba.conf

enter image description here

最佳答案

检查 config 目录中的 database.php 文件,并检查 pgsql 数组。如果从 .env 访问数据库凭据值在那里不起作用,请通过直接将凭据放在那里进行测试。希望它会有所帮助。 Artisan 命令通过直接从 .env 文件而不是从 database.php 访问凭据来工作,这就是迁移有效的原因。

关于php - 全新安装的 laravel 项目无法访问 postgresql 数据库,但可以执行 php migrate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49359243/

相关文章:

javascript - 无法使用 AngularJS 从服务器访问文件

php - 检查事件状态按钮前后的按钮

sql - 选择购买了一组商品的用户

sql - 检测 PostgreSQL 中的孤立行

PHP:将动态数量的值添加到 MySQL 数据库中

php - 为什么不能将信息写入/tmp 目录而不是/var/www/html?

php - Laravel 文件下载 - 未启用 php_fileinfo 扩展

php - Laravel 中的 undefined variable : title,

MySQL 使用此增量 id 插入

node.js - Nodejs 整数错误输入语法无效