如何在PostgreSQL 9.4上设置postgres密码

时间:2019-08-20 17:58:30  来源:igfitidea点击:

postgres用户拥有在postgres服务器中工作的所有特权。
它就像一个管理员。
安装PostgreSql9.4后,默认postgres用户不需要密码就可以登录Postgres服务器控制台。
在Postgres服务器上设置密码非常重要。

设置postgres密码

设置postgres密码是相当棘手的,它不同于MySQL。
你必须对文件进行一些编辑。

设置postgres的密码

# 切换到 postgres 用户
$ sudo su - postgres

# 登录到 postgres 服务器
$ psql

## 设置密码
password postgres

# To quite from postgres
q

现在从postgres系统用户注销

exit

编辑/etc/postgresql/9.4/main/pg_hba.conf

## 做一个备份
sudo cp -pv /etc/postgresql/9.4/main/pg_hba.conf /etc/postgresql/9.4/main/pg_hba.conf.orig

## 编辑这个文件
sudo vi /etc/postgresql/9.4/main/pg_hba.conf

设置密码方式是md5

root@ubuntu:/etc/postgresql/9.4/main# egrep -v '^#|^$' pg_hba.conf
local   all             all                                     md5
host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5
root@ubuntu:/etc/postgresql/9.4/main#

重新启动postgres服务

sudo service postgresql restart

测试

现在登录postgres服务器进行测试。

Hyman@ubuntu:~$ sudo su - postgres
[sudo] password for Hyman: 
postgres@ubuntu:~$ 
postgres@ubuntu:~$ 
postgres@ubuntu:~$ psql
Password: 
psql (9.4.4)
Type "help" for help.

postgres=# 
postgres=# q
postgres@ubuntu:~$ 
postgres@ubuntu:~$

如果为其他postgres用户设置了密码,则使用下面命令登录:

psql -U user-name -W