如何更改PostgreSQL用户密码?

如何更改PostgreSQL用户的密码?

无密码login:

sudo -u user_name psql db_name 

如果您忘记了密码,请重置密码:

 ALTER USER 'user_name' WITH PASSWORD 'new_password'; 

然后键入:

sudo -u postgres psql

然后:

\密码postgres

然后退出:

\ q

如果这不起作用,请重新configuration身份validation。

编辑/etc/postgresql/9.1/main/pg_hba.conf (path将有所不同)并更改:

  local all all peer 

至:

  local all all md5 

然后重新启动服务器:

 sudo service postgresql restart 

你可以并且应该encryption用户的密码:

 ALTER USER username WITH ENCRYPTED PASSWORD 'password'; 

转到您的Postgresqlconfiguration和编辑pg_hba.conf

sudo vim /etc/postgresql/9.3/main/pg_hba.conf

然后改变这一行:

 Database administrative login by Unix domain socket local all postgres md5 

至 :

 Database administrative login by Unix domain socket local all postgres peer 

然后通过SUDO命令重新启动PostgreSQL服务

psql -U postgres

您现在将进入并将看到Postgresqlterminal

然后input

\password

并inputPostgres默认用户的新密码,再次成功更改密码后,转到pg_hba.conf并将更改恢复为“md5”

现在你将会login为

psql -U postgres

用你的新密码。

如果您发现任何问题,请告诉我。

要使用Ubuntu命令行更改密码,请使用:

 sudo -u <user_name> psql -c "ALTER USER <user_name> PASSWORD '<new_password>';" 

这是谷歌的第一个结果,当我正在寻找如何重命名用户,所以:

 ALTER USER <username> WITH PASSWORD '<new_password>'; -- change password ALTER USER <old_username> RENAME TO <new_username>; -- rename user 

其他一些命令对用户pipe理有帮助:

 CREATE USER <username> PASSWORD '<password>' IN GROUP <group>; DROP USER <username>; 

将用户移到另一个组

 ALTER GROUP <old_group> DROP USER <username>; ALTER GROUP <new_group> ADD USER <username>; 

在我的服务器上configuration的configuration被定制了很多,我设法只在pg_hba.conf文件中设置了信任authentication之后才更改密码:

 local all all trust 

不要忘记把它改回密码或md5

我相信改变密码的最好方法就是使用:

 \password 

在Postgres控制台中。

资源:

使用此命令指定未encryption的密码时必须小心。 密码将以明文方式传输到服务器,并且也可能会logging在客户端的命令历史logging或服务器日志中。 psql包含一个命令\密码,可用于更改angular色的密码而不暴露明文密码。

https://www.postgresql.org/docs/9.0/static/sql-alterrole.html