【发布时间】:2015-07-07 12:33:24
【问题描述】:
我不是通信网络方面的专家,所以我不知道我的“主机名”应该是什么,在哪里可以找到它?
我在 ubuntu 14.04 上创建了一个 postgreSQL 服务器,我可以通过将主机名设置为 127.0.0.1(localhost),甚至 192.168.1.42(我的私有 IP)从同一台计算机连接到它。但是我无法从任何其他计算机连接到我的服务器,即使它们是否在本地网络上。我总是收到这条消息:
"Connection to <hostname>:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections."
其中 127.0.1.1、127.0.0.1、192.168.1.42、98.765.432.123(公共 ip)或其他任何地方,它都不起作用。 什么是正确的主机名?
我已经将listen_addresses 设置为'*',已经编辑了pg_hba.conf 以接受0.0.0.0/0 IP-s,并禁用了ubuntu 防火墙。
【问题讨论】:
-
能贴一下jdbc连接字符串吗?
-
您很可能安装了防火墙来阻止来自外部的连接。
-
Giovanni, yes, "jdbc:postgresql://
/ " ( 里面是字符串变量,我用 JTextField 将它们输入到我的程序中) -
当你
telnet hostname 5432时会发生什么?如果这不起作用,那真的是网络问题,而不是 Postgres 或 JDBC 问题。 -
Andomar,来自哪台计算机、我自己的 (ubuntu) 或本地/非本地网络中的其他 (Windows) 计算机?主机名是什么,我的公共 IP ? (我不是专业人士)。在我的电脑上 telnet 适用于 127.0.0.1 和 192.168.1.42,但不适用于公共 ip 98.765.432.123 (?)
标签: java postgresql jdbc