Postgresql 默认用户名与密码的操作

在UNIX平台中安装PostgreSQL之后,PostgreSQL会在UNIX系统中创建一个名为“postgres”当用户。PostgreSQL的默认用户名和数据库也是“postgres”,

不过没有默认密码。在安装PostgreSQL之后可以以默认用户登录,也可以创建新当用户名。

以默认用户登录

Yu @Coat ~ $ sudo su postgres #切换至postgres
postgres @Coat /home /Yu $ psql postgres #登入默认数据库
[ sudo ] password for Yu:
psql (9.1.6 )
Type “help” for help.

以上命令也可以简化为:

Yu @Coat ~ $ sudo -u postgres psql postgres

登录之后给默认用户“postgres”设置密码

postgres= # \password postgres #给postgres用户设置密码
Enter new password:
Enter it again:
postgres= #

创建新用户

在UNIX shell中“createuser”命令可以创建用户。

sudo -u postgres createuser username #以“postgres”用户执行 createuser username语句

如果有以下提示

createuser: could not connect to database postgres:
FATAL: role “xxx” does not exist

是因为只有UNIX系统中的postgres用户才能用createuser/dropuser创建或者删除数据库中的用户(role)。

补充:PostgreSQL有关用户名和密码的问题

今天在连接PostgreSQL 遇到这样一个问题,很是郁闷。打开Postgre连接数据库,输入密码:PWD_A,一直弹出错误窗体。

以为连接服务器的密码错误呢,但是无法进入修改密码。

第一个问题无法解决,查看是否服务没有启动.

原来服务没有启动,Postgres客户端是弹出报错信息。

就去启动服务,但是服务启动不起来,估计还是密码问题。

后“我的电脑”—“管理”—“用户”—-“Postgres”,

重新设置Postgres的用户密码为:PWD_A.

问题就出在这里。电脑管理用户里的Postgres的密码是安装Postgres时设置的电脑开机密码。

所以将此处Postgres的用户密码更为当初设置开机密码即可。

折腾半天,才知Postgres密码与客户端连接服务器密码不同造成的。郁闷….原因所在本人一直认为两处的密码是一致的。真是菜啊~~~。

实践告诉你一切。。。。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。


数据运维技术 » Postgresql 默认用户名与密码的操作