Postgresql开启远程访问的步骤全纪录

    前言

    安装PostgreSQL数据库之后,默认是只接受本地访问连接。如果想在其他主机上访问PostgreSQL数据库服务器,就需要进行相应的配置。下面话不多说了,来一起看看详细的介绍吧。

    步骤如下:

    要在Postgresql中允许远程访问,需要设置如下2个文件:

    • postgresql.conf
    • pg_hba.conf

    然而由于系统安装的是Centos 7,而默认的Postgresql版本为9.2,于是安装了个9.6的版本,却发现在配置好远程无法访问。而默认的路径是找不到上述2个文件的,此时可以通过如下的方式查看其对应的文件的路径:

    
    dog=# show config_file; 
        config_file     
    ------------------------------------------ 
     /etc/postgresql/9.4/main/postgresql.conf 
    (1 row) 
    dog=# show hba_file; 
        hba_file     
    -------------------------------------- 
     /etc/postgresql/9.4/main/pg_hba.conf 
    (1 row) 

    而其他的配置可以通过show all来查看。

    首先我们配置pg_hba.conf,设置本地允许访问的IP地址范围:

    
    ... 
    host all all 127.0.0.1/32  trust 
    host all all 192.168.1.0/24 md5 

    在这里我们运行192.168.1.0到192.168.1.255的主机访问。

    接着修改postgresql.conf文件:

    
    listen_addresses='localhost' 

    将其中的localhost替换为*并去掉注释。

    之后重启服务器,并通过如下方式查看其监听的IP:

    
    dog@debian:~$ sudo netstat -plunt | grep postgres 
    tcp  0  0 :5432   0.0.0.0:*    LISTEN  787/postgres  
    tcp6  0  0 ::1:5432    :::*     LISTEN  787/postgres 

    在远程的情况下看到的都将是星号而不是127.0.0.1。

    参考文章:https://www.postgresql.org/docs/9.3/static/sql-show.html

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对lingkb的支持。