与PG连接时,AWS Postgres DB“不存在”

时间:2018-06-24 23:03:47

标签: postgresql amazon-web-services amazon-rds

我似乎无法连接到AWS中的数据库实例。我正在使用pg程序包,并且遵循the website中的示例不起作用。

搜索“ aws postgres数据库不存在”确实没有返回任何帮助。遍历PG github上的打开/关闭问题也无济于事。

运行$nc <RDS endpoint> <port number>返回一条成功消息,因此肯定存在该消息。从我的数据库实例复制/粘贴了客户端配置中放置的每个值。

我开始怀疑数据库的名称是否与AWS上RDS的“实例”部分中显示的名称不同?

const client = new Client({
  host     : '<<RDS ENDPOINT>>',
  database : '<<RDS NAME>>', // maybe this isnt the real name?
  user     : '<<username>>',
  password : '<<password>>',
  port     : <<port>>
});
client.connect()
  .then(data => {
    console.log('connected');
  })
  .catch(err => {
    console.log(err);
  })

4 个答案:

答案 0 :(得分:21)

我也遇到了这个问题。看起来数据库实例名称和实际数据库名称是两个不同的东西,即使在创建数据库时添加名称,它的默认值也为“ postgres ”。当我输入数据库名称时,它也给了我同样的错误。但是,当我只输入' postgres '时,效果很好。尝试一下,看看它是否适合您。

答案 1 :(得分:2)

RDS实例的初始配置非常混乱,因为参数“数据库名称”仅是实例的名称,而不是数据库的正确名称。如果要在创建数据库实例的同时让AWS创建数据库,则必须选择“其他配置”并显式添加一个名为“初始数据库名称”的参数。检查我附加的here屏幕截图。

答案 2 :(得分:0)

尝试将 postgres 添加为 dbname。它对我有用!

答案 3 :(得分:0)

如果上述答案不起作用,请尝试此操作。 删除:5439/lab 结尾,使 Host 值以:.com

结尾