postgresql – psql:致命:角色“postgres”不存在(使用-h localhost选项)

我在本地机器上安装了Postgres.

当我执行

psql -U postgres -d buzzsumo

它正确地向用户postgres询问我的密码.

但是,当我跑

psql -U postgres -d buzzsumo -h localhost

它给了我这个错误信息:

psql: FATAL: role “postgres” does not exist

为什么会出现这种情况,在第一个示例中,我连接到本地服务器,这相当于传入localhost?

解决方法

你没有说,但我猜你在MacOS或Linux上运行postgres.

第一种形式(没有-h)通过“unix socket”连接.第二种形式,“-h localhost”通过TCP / IP连接到localhost(IP地址127.0.0.1).

Postgres以不同的方式处理这两种类型的连接 – 或者至少它可以这样做.如果检查“pgsql / data / pg_hba.conf”文件,以查看为这两种类型的连接配置了哪些身份验证机制.

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...