![](/img/trans.png)
[英]Cannot connect to AWS RDS Postgresql from local host for dev purposes
[英]How to connect to PostgreSQL DB without a “database” name from AWS RDS
使用节点pg包pg
,我试图连接到在AWS-RDS中创建的PostgreSQL数据库。 我相信在创建实例时不会给数据库命名,请注意实例不同于数据库。 当尝试使用pg
Client
或Pool
连接时,我的语法是
const client = new Client({
host : <<RDS ENDPOINT>>,
user : <<RDS DB USERNAME>>,
password : <<RDS DB PASSWORD>>,
port : <<RDS DB PORT>>
});
client.connect()
.then(data => {
console.log('connected');
})
.catch(err => {
console.log(err);
})
但是每次返回error: database <<linux user name>> does not exist
。
现在创建一个不同的PostgreSQL实例并为数据库提供一个名称,我可以将database
prop添加到我的Client
objects config中,并且一切正常,并且返回connected
的控制台日志。
所以我的问题是,如何在没有在Client
配置中提供database
道具的情况下连接到AWS-RDS上的database
?
用空字符串提供database
道具将被我的Linux用户名覆盖
使用node-postgres
软件包时,您需要在Client / Pool配置对象中提供数据库属性。 如果您的PostgreSQL数据库没有名称,请说如果您是使用AWS-RDS创建的,则该数据库名称将默认为postgres
。 只需向数据库prop提供postgres
解决未命名数据库的所有问题。
const client = new Client({
host : <<RDS ENDPOINT>>,
user : <<RDS DB USERNAME>>,
password : <<RDS DB PASSWORD>>,
port : <<RDS DB PORT>>,
database : 'postgres' // supplying a database name with `postgres`
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.