【问题标题】:Postgres ODBC: connection "actively refused"Postgres ODBC:连接“主动拒绝”
【发布时间】:2011-07-11 20:15:05
【问题描述】:

我正在使用 SSH 隧道从 Windows 7 机器连接到远程 Postgres 数据库。

当我使用 pgAdmin 连接到远程数据库时,隧道工作正常。但是,我还没有设法设置一个 ODBC DSN 来连接到远程数据库。

我正在创建一个与 pgAdmin 具有相同服务器地址/用户名/密码/端口/ssl 模式的系统 DSN,但是当我单击“测试”时,我得到:“无法连接到服务器;无法建立连接,因为目标机器主动拒绝。”

关于从哪里开始调试有什么想法吗?我已经排除了 Windows 防火墙和远程服务器配置,因为我可以使用 pgAdmin 中完全相同的信息进行连接。

编辑

重新安装 Windows 后问题自行解决。

【问题讨论】:

  • 服务器端是否有任何痕迹(日志文件中的某些内容)?
  • 服务器没有连接记录。最后,我擦拭了机器(重新安装了 Windows 7)并重新开始,它工作正常。但这令人不安,因为我不知道什么时候会再次发生......
  • 致 OP,您能否展示一下使用 PostgreSQL ODBC 驱动程序将隧道信息放在 DSN 中的方式和位置...我是第一次这样做。非常感谢

标签: windows postgresql networking odbc database-connection


【解决方案1】:

调试时,首先要做的是使用 psql 命令行实用程序开始测试 PostgreSQL 服务器。这避免了驱动程序等问题,以了解实际发生的情况。一般来说,我的故障排除过程是:

  1. 我可以 ping 服务器吗?
  2. 我可以用 psql 连接吗?
  3. 当我通过控制面板测试我的连接时,它是否有效?

现在,假设问题出在 #2 上,我要做的第一件事是尝试禁用两侧的防火墙(尝试关闭后可以启动并调整它们)。这排除了行为不端的防火墙,如果它表明这是一个问题,那么您就有了在哪里进行故障排除的答案。

根据我的经验,Windows 防火墙可能会导致各种问题。我什至看到它在网页中途阻止网页我认为您不能根据您提供的信息排除 Windows 防火墙。

如果再次发生这种情况,首先要做的事情包括禁用所有防病毒软件和防火墙。

另一种可能性是 ODBC 配置错误(可能是端口 5423 而不是 5432)或某种类型的 DLL 安装不当。后者可以使用sfc /scannow 或重新安装 odbc 驱动程序或其他操作来修复(或不修复)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-29
    • 1970-01-01
    • 2019-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 2021-04-24
    相关资源
    最近更新 更多