PostgreSQL远程访问配置(Linux版)

文章目录

        • 1.查找配置文件位置
        • 2.修改配置文件 postgresql.conf 及 pg_hba.conf
        • 3.重启Postgresql服务
        • 4.修改Postgresql 数据库超级用户postgres的密码
        • 4.查看数据库进程状态

今天配置PostgreSQL的远程访问,遇到很多坑,查看资料总结如下。

1.查找配置文件位置

sudo find /  -name postgresql.conf

2.修改配置文件 postgresql.conf 及 pg_hba.conf

sudo nano /etc/postgresql/11/main/postgresql.conf

找到 #listen_addresses = ‘localhost’ 取消注释改为 listen_addresses = ‘*’ 监听整个网络

找到 #password_encryption = md5 取消注释 password_encryption = md5

sudo nano /etc/postgresql/11/main/pg_hba.conf

在文件末尾加入host all all 0.0.0.0/0 md5 整个网络可以访问
host all all 192.168.0.0/24 md5 只有192.168.0.X网段可以访问

3.重启Postgresql服务

service postgresql restart

重启服务后, 开始连接,如果提示认证失败,那就继续往下看。

4.修改Postgresql 数据库超级用户postgres的密码

PostgreSQL在安装的时候都会在linux和数据库上都创建一个postgres到用户用于访问,数据库上的用户postgres是一个超级用户,用户的初始密码为空,是不能用于远程连接数据库的,因为PostgreSQL本身有一个表 pg_shadow,表里记录了PostgreSQL的用户和密码。修改数据库密码方法如下:

sudo su postgres                        #切换用户到 postgres
psql                                         #打开postgresql数据库交互客户端工具
select * from pg_shadow;             #查看表中 postgres 用户的密码状态
alter user postgres password '新密码';    #修改密码
\q                                         #退出客户端

重启服务,连接就可以成功了,注意连接用户名是 postgres 密码是你刚设置的新密码

4.查看数据库进程状态

sudo lsof -i :5432

你可能感兴趣的:(QT)