4

我的应用程序已经崩溃,因为它无法连接到 postgres 数据库,当我尝试通过 ssh 和 psql 连接到数据库时,我收到以下消息:

psql: could not connect to server: Connection refused
         Is the server running on host "<GEAR_ID>-<NAMESPACE>.rhcloud.com" (<IP_ADDRESS>) and accepting
         TCP/IP connections on port <PORT_NUMBER>?

运行 rhc app show --state 打印:

Cartridge jbossas-7, haproxy-1.4 is started
Cartridge postgresql-9.2 is started

此外,运行 rhc app show 没有任何异常。

我无法远程登录到上述 IP_ADDRESS 和 POST_NUMBER,这看起来像是两个齿轮之间的通信已中断。

有任何想法吗?

4

3 回答 3

2

我有同样的问题。使用pg_ctl而不是rhc命令为我修复了它。

$ rhc ssh <appname>
[...rhcloud.com ...]\> pg_ctl restart
pg_ctl: old server process (PID: 20034) seems to be gone
starting server anyway
server starting
于 2014-06-19T06:30:07.083 回答
1

要重新启动整个应用程序:

rhc app restart <app_name>

要重新启动您的 postgresql 墨盒:

rhc cartridge restart <cart_type> --app <app_name> 

您可以通过运行获取购物车类型

rhc app show <app_name> --gears

并在“墨盒”标题下查找墨盒名称

于 2014-04-04T13:39:03.560 回答
0

好的,所以我设法解决了这个问题,但这是一个 PITA。

由于我在网上找不到任何有用的帮助解决这个问题,我最终基于我的旧应用程序创建了一个新应用程序,并使用 pg_dump 和 psql 将数据库从旧应用程序保存并恢复到我的新应用程序中.

我仍然不知道为什么原始应用程序不再能够从主 jboss 设备到 postgresql 设备进行通信,即使 postgres 服务器已启动并运行。

也许(希望)来自 openshift 的人会想要研究这个。如果是这样,我会保留我的旧应用程序一段时间。

于 2014-04-06T10:37:42.043 回答