"服务器没有收听"在pgAdmin III中使用postgreSQL

时间:2015-09-09 09:06:43

标签: postgresql

首先:我是触及数据库的新手。

我正在使用带有pgAdmin III的postgreSQL,它在几天前工作得非常好:几天前,当我没有工作时,我在"后台进程中看到了"几个相同的postgreSQL程序(?)运行的Windows,我决定阻止它们,因为我当时没有使用它们。错误:现在,当我尝试连接到服务器(在localhost上)时,收到错误消息:

  

"服务器无法收听"

     

服务器不接受连接:连接库报告    无法连接到服务器:连接被拒绝(0x0000274D / 10061)服务器是否在主机上运行" localhost" (:1)并接受端口5432上的TCP / IP连接?无法连接到服务器:连接被拒绝(0x0000274D / 10061)服务器是否在主机上运行" localhost" (127.0.0.1)并接受端口5432上的TCP / IP连接?

我已经看过stackoverflow上的类似主题,查看了listen_address文件,postgresql.conf和pg_hba.conf文件,但是一切似乎都是"正常" (根据我在这些主题中读到的内容)。

我发布这个是因为......好吧,我没有找到任何其他人做我做的事情(停止后台进程,然后无法重新连接)。

6 个答案:

答案 0 :(得分:15)

使用服务(开始→运行→services.msc)并查找postgresql- [version]服务。它在运行吗?

  • 如果没有,请尝试启动它。
    • 如果可行,您可以通过将Windows的启动类型更改为Automatic来自动启动;或者Automatic, delayed start如果你不想让它太慢地放慢启动速度。
  • 如果你无法启动它,你可能刚刚安装了pgAdmin而没有安装PostgreSQL本身。
  • 如果它不能开始打开事件查看器(开始→运行→Eventvwr)并查找与PostgreSQL服务相关的错误消息。

答案 1 :(得分:3)

修改\data\postgresql.conf查找并修改此行listen_addresses

listen_addresses = '*'

并取消注释

port = 5432

答案 2 :(得分:1)

出于安全原因, PostgreSQL最初不会侦听服务器计算机上的所有可用IP地址。要通过网络访问服务器,您需要首先启用侦听地址。

对于以版本8.0 开头的PostgreSQL服务器,使用" listen_addresses" postgresql.conf文件中的参数。在这里,您可以输入服务器应该监听的IP地址列表,或者只需使用' ' *来监听所有可用的IP地址。对于早期服务器(版本7.3或7.4),您需要将" tcpip_socket" 参数设置为'真'

您可以使用pgAdmin III中内置的postgresql.conf编辑器编辑postgresql.conf配置文件。更改此文件后,需要重新启动服务器进程才能使设置生效。

  

如果您仔细检查了配置但仍然出现此错误   消息,你仍然不太可能遇到致命的PostgreSQL   不当行为。您可能有一些低级别的网络连接   问题(例如防火墙配置)。请仔细检查   在向PostgreSQL社区报告错误之前。

致谢:PostgreSQL - Guru Hint。

答案 3 :(得分:1)

如果在Windows上,则可能是防火墙问题。尝试使用post 5432(或您可能使用的任何帖子)为postgres添加规则(TCP作为协议应该有效)。

答案 4 :(得分:0)

转到任务管理器 - >服务 - > postgresql-x64-9.4 - PostgreSQL Server 9.4(右键单击) - >开始服务 从那里只需刷新postgresql并连接,一切都会好的。

答案 5 :(得分:0)

我尝试了所有给定的方法。 postgresql服务运行正常。最后,在Windows中以管理员身份登录。有效。猜猜看,postgresql不允许自己在非管理员用户中运行。