在本地linux安装上连接到postgres数据库

时间:2015-09-28 23:35:58

标签: ruby linux postgresql amazon-ec2

我试图弄清楚如何通过我的ruby应用程序使用PGConn进行连接,以便连接到aws ec2 linux服务器上的postgres数据库。

db_connection = PGconn.connect("ip-172-31-90.9.us-west-2.compute.internal", 5432, '', '', "testdb", "username", "password")

我一直收到错误

app.rb:21:in `initialize': could not translate host name "ip-172-31-90-9.us-west-2.compute.internal." to address: nodename nor servname provided, or not known (PG::ConnectionBad)

我在linux服务器上运行/ sbin / ifconfig -a来获取IP地址,但它仍然无法连接。我还根据网站http://www.cyberciti.biz/tips/postgres-allow-remote-access-tcp-connection.html

的说明编辑了文件

1 个答案:

答案 0 :(得分:2)

IP" ip-172-31-90-9"似乎私有IP地址。

所以你需要做的事情:

  1. 将公共IP或弹性IP分配给该ec2实例。
  2. 在其安全组中设置入站规则,并将端口5432打开到0.0.0.0/0或您案例中的任何IP范围
  3. 从本地测试端口

    telnet NEW_Public_IP 5432

  4. 如果可以,那么您应该可以连接数据库。