当第一次在 Linux 上连接到 PostgreSQL 时,许多管理员都会有疑问,尤其是如果这些管理员来自 MySQL 世界。 默认情况下,安装 PostgreSQL 时, postgres 还添加了用户。
如果你运行命令:
cat /etc/passwd
……你会看到 postgres 用户。
postgres:x:26:26:PostgreSQL Server:/var/lib/pgsql:/bin/bash
很多人问的第一个问题是,
“用户 postgres 的默认密码是什么?”
答案很简单……没有默认密码。 PostgreSQL 的默认身份验证模式设置为
识别
.
cat /var/lib/pgsql/9.3/data/pg_hba.conf
…您会看到身份验证模式是 识别.
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
身份认证方法是什么? 好吧,它通过获取您正在操作的操作系统用户名并将其与允许的数据库用户名进行比较来工作。 有可选的用户名映射。
这意味着为了连接到 PostgreSQL,您必须以正确的操作系统用户身份登录。 在这种情况下,我们以 根. 当我们尝试连接到 PostgreSQL 时:
psql
…我们得到以下错误:
psql: FATAL: role "root" does not exist
但是,如果我们成为默认的 PostgreSQL 用户, postgres:
su - postgres
…然后尝试连接到 PostgreSQL:
psql
……我得到了正确、有效的回应!
psql (9.3.9)
Type "help" for help.
postgres=#
是你的 Cloud VPS 减慢您的 PostgreSQL 实例速度? Liquid Web 的专用服务器就是解决方案。 Liquid Web 的服务器在性能和支持方面胜过竞争对手。 看看我们的 VPS 服务器或专用服务器如何让您的网站性能飙升。