在Ubuntu上重置PostgreSQL的密码

前端之家收集整理的这篇文章主要介绍了在Ubuntu上重置PostgreSQL的密码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用Ubuntu。有几天我在rails上安装了用于ruby的Postgresql数据库。我为数据库服务器创建了一个超级用户,我忘了postgresql超级用户的密码。任何一个请帮助如何重置超级用户的密码。我试过的一件事,我卸载它,然后再次安装它,但其超级用户被保留,以前创建。
假设您是该机器的管理员,Ubuntu已授予您以任何用户身份运行任何命令的权利。
另外假设你没有限制pg_hba.conf文件中的权限(在/etc/postgresql/9.1/main目录中),它应该包含这一行作为第一条规则:
# Database administrative login by Unix domain socket  
local   all             postgres                                peer

(关于文件位置:9.1是主要的postgres版本,主要是你的“集群”的名称,如果使用较新版本的postgres或非默认名称会有所不同,使用pg_lsclusters命令获取你的版本/系统)。

无论如何,如果pg_hba.conf文件没有该行,编辑文件添加它,并重新加载服务与sudo服务postgresql重新加载。

然后,您应该能够使用psql作为postgres超级用户使用此shell命令登录

sudo -u postgres psql

一旦在psql里,发出sql命令:

ALTER USER postgres PASSWORD 'newpassword';

在此命令中,postgres是超级用户名称。如果忘记密码的用户是ritesh,则命令将是:

ALTER USER ritesh PASSWORD 'newpassword';

参考文献:PostgreSQL 9.1.13 Documentation,Chapter 19. Client Authentication

记住,你需要在结尾处键入一个单个S的postgres

猜你在找的Ubuntu相关文章