【问题标题】:PostgreSQL via pgAdmin III - Server Doesn't ListenPostgreSQL 通过 pgAdmin III - 服务器不听
【发布时间】:2015-05-21 16:22:59
【问题描述】:

我们公司有一个旧的 linux 服务器,它运行一些 tomcat web 应用程序。其中一个应用程序正在连接到 PostgreSQL。虽然我是 C#.Net/Windows 编码员,但我需要使用 pGAdmin III(或任何建议的等效项)从我的计算机连接到该数据库。尝试连接时,pgAdmin 说 Server Not Listening。

在不太了解 linux 的情况下,我使用 WinSCP 连接到文件结构。我有关于旧应用程序、任何数据源或其数据连接的零文档。我已经能够确定以下内容,假设 Web 应用程序的位置实际上是合法的,而不是一些非运行副本。

PostgreSQL

在一个应用的连接信息中:

 jdbc:postgresql://localhost:5432/somename

经过一番挖掘,我在服务器文件结构上发现了以下可能的postgresql实例。

\etc\postgresql\8.3\main
\etc\postgresql\8.4\main

还有 \etc\postgresql-common 里面有非常不同类型的文件。

如果有其他实例或相关文件夹,我不知道也不知道去哪里找。这是一个迷宫般的野兽。

我在配置文件中确保了侦听 =“*”,这应该是两个修复之一。它已经设置为 *,所以假设其中之一是正确的,我应该在那里很好。

我知道至少某些 postgresql 实例已打开,因为旧应用程序正在运行并获取数据,所以这是两个修复中的另一个。

pgAdmin

我在这里的一个单独线程中听说重新安装 pgAdmin 可能会解决问题,但它没有。我尝试了使用和不使用 ssl。

这是我尝试在 pgAdmin III 中设置连接的方式:

姓名:某某名

主持人:我在这里尝试了一些组合。 //servername/somename,或者只是 //servername

端口:5432(与预期匹配,也是连接的端口)

服务:空白

MaintenanceDB:我在 pgadmin、postgres 和我尝试连接的实际数据库中尝试了默认设置。

用户名和密码:旧应用中连接信息的凭据。

我得到服务器不听,表明它没有打开(嗯......一些数据源正在运行并且正在工作并且 WEB-INF 中的数据表明它是 postgresql),或者它不接受 TCP/ IP 连接,根据我能找到的 postgresql 的实例。

长话短说

在这一点上,我假设以下问题之一是问题...

  1. 我在 postgreSQL 中输入的连接信息没有正确输入,但我不知道我做错了什么。

  2. 连接信息(Web 应用程序)的来源是错误的/旧的/不是来自正在运行的实例(在这种情况下,我不知道如何判断,而不是在 linux 中)。

  3. 我找到的postgresql的实例不是它正在使用的实例,我不知道如何找到它。

  4. 在网络方面有些问题,但由于我的计算机和 linux 服务器都在同一个网络上,这似乎不太可能。

另外,每个人,请为未来的可怜灵魂记录你的东西。非常感谢您能为我提供的任何帮助。

【问题讨论】:

    标签: linux postgresql pgadmin data-connections


    【解决方案1】:

    您可能想使用隧道:

    ssh -L 5432:localhost:5432 user@server
    

    登录远程服务器后,您将计算机上的端口 5432 映射到远程服务器。然后你可以使用 pgAdmin 在端口 5432 上连接到你的本地主机。确保你的计算机上的这个端口上没有运行任何东西。

    编辑:查看theseexamples,了解如何使用腻子设置隧道

    【讨论】:

    • 很有帮助,很有道理。谢谢!但是现在我的访问被拒绝了。它说“您首先必须为您的客户端授予对服务器的主要访问权限(基于主机的身份验证)”,我不完全理解,但我会继续研究。
    猜你喜欢
    • 2015-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 2023-04-08
    相关资源
    最近更新 更多