PostgreSQL之连接失败的问题及解决

 更新时间:2023年05月05日 14:27:39   作者:asin929  
这篇文章主要介绍了PostgreSQL之连接失败的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

PostgreSQL连接失败问题

问题

在pgAdmin中,将本地数据库连接的host由localhost或127.0.0.1改为自己的真实ip–10.xxx.xxx.xxx后,连接失败

报错如下:

psql: could not connect to server: Connection refused  
Is the server running on host "my host name" (IP) and accepting  
TCP/IP connections on port 5432?  

解决

出现上述问题时,需修改postgresql.conf和pg_hba.conf文件。

此文件位于postgresql数据文件目录中,默认为/var/lib/pgsql/data/。

将postgresql.conf修改如下:listen_addresses = '*'。

pg_hba.conf中增加需要连接该数据库主机的ip地址。

如下所示,增加对主机10.xxx.xxx.xxx的信任。

host    all             all             10.xxx.xxx.xxx/32         trust

如上设置后,使用10.xxx.xxx.xxx可正常连接。

解释

原来,在客户端访问PostgreSQL数据库时,PostgreSQL会读取文件pg_hba.conf判断是否信任该主机,故所有需要连接PostgreSQL Server的主机都应当在pg_hba.conf中添加对其信任,即使是Server主机也不例外!

PostgreSQL连接出错 could not connect to server:Connection refused(0x0000274D/10061)

使用navicat连接本地PostgreSQL数据库时报错:

could not connect to server: Connection refused (0x0000274D/10061)  Is the server running on host"localhost" (:1) and acceptingTCP/IP connections on port 5433 ?

could not connect to server: Connection refused (0x0000274D/10061)  Is the server running on host"localhost" (127.0.0.1) and acceptingTCP/IP connections on port 5433?

首先检查一下是不是没有启动PostgreSQL服务,因为没启动服务可能会报这个错误(我就是);

方法如下

win+R打开输入命令框,输入services.msc打开服务列表。

右键启动

再次尝试连接数据库,看是否成功。

如果没成功那就进行以下步骤              

 1、在postgresql的安装文件夹\9.5\data\pg_hba.conf里面找到“# IPv4 local connections:”

然后在这行上面添加“local pgsql all trust”,             

在它下面的“host    all         all         127.0.0.1/32          md5”             

下面添加一行,内容为“host all all 192.168.91.1/24 md5”   

注:127.0.0.1/32和192.168.91.1/24中的32与24,用32表示该IP被固定,用24表示前3位固定,后面一位可以由自己设,这样,前3位ip地址与该设定相同的计算机就可以访问postgresql数据库。                 

2、PostgreSQL\9.5\data\postgresql.conf文件中,找到“#listen_addresses = 'localhost'”,把它改成“listen_addresses = '*'”。

这样,postgresql就可以监听所有ip地址的连接。   

   

3、然后重启postgresql服务。如果系统启用了防火墙,请先关闭。如果要使用pgadmin连接远程的数据库服务器,须在SSL的选项中选择允许。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 用PostgreSQL数据库做地理位置app应用

    用PostgreSQL数据库做地理位置app应用

    项目中用到了postgreSQL中的earthdistance()函数功能计算地球上两点之间的距离,中文的资料太少了,我找到了一篇 英文的、讲的很好的文章,特此翻译,希望能够帮助到以后用到earthdistance的同学
    2014-03-03
  • postgresql 中round函数的用法说明

    postgresql 中round函数的用法说明

    这篇文章主要介绍了postgresql 中round函数的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL模式匹配与正则表达式方法总结

    PostgreSQL模式匹配与正则表达式方法总结

    在postgresql中使用正则表达式时需要使用关键字“~”,以表示该关键字之前的内容需匹配之后的正则表达式,这篇文章主要给大家介绍了关于PostgreSQL模式匹配与正则表达式的相关资料,需要的朋友可以参考下
    2022-11-11
  • PostgreSQL 启动失败的解决方案

    PostgreSQL 启动失败的解决方案

    这篇文章主要介绍了PostgreSQL 启动失败的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • postgresql行转列与列转行图文教程

    postgresql行转列与列转行图文教程

    PostgreSQL是一种开源的关系型数据库,它提供了多种管理工具来操作数据库,下面这篇文章主要给大家介绍了关于postgresql行转列与列转行的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • Postgresql创建新增、删除与修改触发器的方法

    Postgresql创建新增、删除与修改触发器的方法

    这篇文章主要介绍了Postgresql创建新增、删除与修改触发器的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Mysql 8.0.33 如何迁移至 Postgresql 16.2

    Mysql 8.0.33 如何迁移至 Postgresql 16.2

    由于云平台需要改造,将Mysql替换成Postgresql,话说回来,Postgresql和Mysql语法有些差异,如何稳妥的进行迁移,下面给大家分享Mysql 8.0.33 如何迁移至 Postgresql 16.2,感兴趣的朋友跟随小编一起看看吧
    2024-05-05
  • PostgreSQL 自增语法的用法说明

    PostgreSQL 自增语法的用法说明

    这篇文章主要介绍了PostgreSQL 自增语法的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • PostgreSQL如何查看事务所占有的锁实操指南

    PostgreSQL如何查看事务所占有的锁实操指南

    这篇文章主要给大家介绍了关于PostgreSQL如何查看事务所占有锁的相关资料,文中通过代码以及图文介绍的非常详细,对大家学习或者使用PostgreSQL具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-10-10
  • Ubuntu中卸载Postgresql出错的解决方法

    Ubuntu中卸载Postgresql出错的解决方法

    这篇文章主要给大家介绍了关于在Ubuntu中卸载Postgresql出错的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09

最新评论