【发布时间】:2018-04-05 23:14:51
【问题描述】:
我希望以前经历过这种情况的人可以帮助我建立与 AWS/EC2 的连接 -> Postgres 正常工作。
以下所有内容都是通过终端,在 Mac 客户端上。
有问题的数据库 - Postgres - 在我的本地 Mac 上的这个 EC2 服务器上远程运行,不是(我的本地 Mac 上也没有安装 Postgres)
我的理解是,我需要能够实际连接到 EC2 服务器并建立 SSL“隧道”连接——从我的 PC 到同一台 EC2 服务器——这样我才能访问 Postgres 数据库
如果我的理解有误,请告诉我。
所以,我打开了 2 个终端窗口。航站楼 A 和航站楼 B。
在 A 航站楼
(a) 连接到 EC2 服务器工作正常。这是 CLI 命令:
ssh -L 3307:127.0.0.1:3306 -i my.pem ubuntu@xx.yy.zzz.99
终端 A 中的 CLI 然后向我显示 Ubuntu/服务器提示符
Last login: Wed Oct 25 12:27:31 2017 from aaa222-444.xxxx.rrr.ff.net
ubuntu@ip-111-222-333-44:~$
然后,我去B航站楼……
在 B 航站楼
(b) 我尝试使用以下命令从本地 连接到 Postgres:
psql -h localhost -p 3307 -U postgres_uid postgres_databasename
每次都失败。
我在 B 航站楼收到此回复:
psql: received invalid response to SSL negotiation: [
我想知道,建立这个 DATABASE 连接是否需要不同的 SSL 设置?还是应该是一旦我登录到 AWS EC2 服务器(如上所述)我应该能够运行 psql 命令(或使用像 Navicat 等 GUI 客户端)?
我很茫然,这里没有人知道如何解决/设置它。这可能很简单,但没关系,我只需要连接:-)
感谢任何人对此的帮助。
【问题讨论】:
-
你配置那个端口来连接psql?因为默认端口是 5432 试试看。
-
我刚试过:
psql -h localhost -p 5432 -U postgres_uid postgres_databasename。返回的错误是could not connect to server: Connection refused Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432?
标签: postgresql amazon-web-services amazon-ec2