问题所在
我试图从PostgreSQL连接到PhpStorm,但它返回以下错误:
[28P01] FATAL: password authentication failed for user "app"
形势
我有以下.env
文件设置:
POSTGRES_DB=app
POSTGRES_USER=app
POSTGRES_PASSWORD=password
POSTGRES_VERSION=15
以及docker-compose.yml
中的以下内容
version: '3'
services:
database:
image: postgres:${POSTGRES_VERSION}-alpine
container_name: database
env_file:
- .env
volumes:
- db-data:/var/lib/postgresql/data:rw
ports:
- '5432'
volumes:
db-data:
在运行docker-compose up -d
时,可以成功地创建容器和卷。
然后在我的PhpStorm中输入以下内容:
但是,错误会弹出,再次输入密码不会修复任何问题。
我在Ubuntu22.04.1 LTS上运行这个
我试过的
我多次使用不同的用户和密码组合(确保使用docker-compose down -v
来消除卷)重新构建容器,结果都是一样的。
我尝试通过执行docker exec -it database psql -U app
并运行ALTER ROLE app WITH PASSWORD 'password'
来更改密码,但是这并没有改变任何事情。
我还在网上看到,它可能需要将用户身份验证设置为ident,但我无法在docker-compose.yml
文件中找到一种方法来更改这一点。
问题是
我如何设置它,以便正确地将我的PhpStorm连接到PostgreSQL数据库?
发布于 2022-11-28 17:10:31
在我的例子中,我使用WSL2 (Ubuntu)运行Windows 10。我在Ubuntu实例中安装了Postgres,作为设置应用程序的一部分。我删除了应用程序,但Postgres服务器仍在运行。当我试图使用localhost:5432
连接到Docker实例时,我转而连接到WSL2 Postgres实例。
在我的例子中,由于我不再在WSL2中使用Postgres,所以我删除了它,从而解决了这个问题。您也可以停止它,或者使用@jjanes中提到的主机名/IP。
https://stackoverflow.com/questions/74521212
复制相似问题