zoukankan      html  css  js  c++  java
  • postgreSQL no pg_hba.conf

    当程序链接PostgreSQL 时,可能会报错:No pg_hba.conf entry。

    这条错误的原因是因为客户端远程访问postgresql受限所致,因为postgresql默认情况下除本机外的机器是不能连接的。

    默认情况下,postgresql本机的连接是信任连接,只要有用户名就可以连接,不用密码. 要改变这种默认设置需要更改postgresql安装目录下的两个配置文件(pg_hba.conf与postgresql.conf)

    认证文件 pg_hba.conf

    文件目录:postgresql安装目录下的..PostGreSQL9.5datapg_hba.conf

    pg_hba.conf每条记录声明一种联接类型,一个客户端 IP 地址范围(如果和联接类型相关的话),一个数据库名,一个用户名字,以及对匹配这些参数的联接使用的认证方法。

    例如:

     
    1. ##Added by liu.chunming  
    1. local  all             all                                          peer  
    2. host   all             all           127.0.0.1/32                   md5  
    3. host   all             all           ::1/128                        md5  

    联接使用的认证方法:

    trust
            无条件地允许联接。这个方法允许任何可以与PostgreSQL数据库服务器联接的用户以他们期望的任意PostgreSQL 数据库用户身份进行联接,而不需要口令。

    md5
            要求客户端提供一个 MD5 加密的口令进行认证。

    如果我想让10.86.12.0~10.86.12.154的IP段能访问PostgreSQL 数据库,需要增加下面一行: 

    1. host   all             all           10.86.12.0/24                  trust  

    配置文件 postgresql.conf

    文件目录:postgresql安装目录下的..PostGreSQL9.5datapostgresql.conf

    要让本机外的机器访问,除了在pg_hba.conf中增加访问的IP段外,这设置外还要把postgresql.conf里的监听地址设置为:listen_addresses = '*'

  • 相关阅读:
    《C#多线程编程实战》2.7 CountDownEvent
    《C#多线程编程实战》2.6 ManualResetEventSlim
    《C#多线程编程实战》2.5 AutoResetEvent
    《C#多线程编程实战》2.4 SemaphoreSlim
    ConcurrentDictionary与Dictionary 替换
    vs2017 代码格式化 文档排版 编辑 设置文档的格式
    面试笔记
    way.js
    SQL Server 2008 技巧快捷键
    CentOS下Docker与.netcore(四)之 三剑客之一Docker-machine+jenkins简单自动化部署
  • 原文地址:https://www.cnblogs.com/zwliang/p/7596856.html
Copyright © 2011-2022 走看看