【问题标题】:How to connect and query PostgreSQL RDS from EC2 using NodeJS?如何使用 NodeJS 从 EC2 连接和查询 PostgreSQL RDS?
【发布时间】:2017-12-19 16:37:43
【问题描述】:

如何使用NodeJS创建从EC2到远程RDS(PostgreSQL)的连接并查询?

我有此代码,但目前无法使用(包括密码的连接字符串应该是什么样子?):

var pg = require('pg');
var conString = "postgres://username:@db.us-east-2.rds.amazonaws.com:5432/testdb";

var client = new pg.Client(conString);
client.connect();

var query = client.query("SELECT * FROM t1");
//fired after last row is emitted

query.on('row', function(row) {
    console.log(row);
});

query.on('end', function() {
    client.end();
});

【问题讨论】:

  • 如果我没记错的话,你需要密码:postgres://username:password@db.us-east-2.rds.amazonaws.com:5432/testdb
  • 这工作..谢谢!我们是否需要在最后以某种方式关闭连接? (或采用上述方法自动)
  • 我建议不要使用裸 url - 请参阅此处的池示例和配置:github.com/brianc/node-postgres#pooling-example。注意设置idleTimeoutMillis会自动关闭一个超时的客户端。
  • 是的,您需要明确关闭连接,否则您的 Postgres 将很快达到最大连接数 -- 请使用 select * from pg_stat_activity; 检查当前会话。
  • 太好了,感谢您的帮助.. @randnum - 我开始检查'pooling-example'。您知道这行代码是否可以简单地替换为常规 SQL 查询而不是参数化? "client.query('SELECT $1::text as name', ['brianc'], function (err, result) {"

标签: node.js postgresql amazon-rds


【解决方案1】:
const connUrl = postgres://{username}:{passoword}@{endpoint}:{port}/{database} 

【讨论】:

    猜你喜欢
    • 2015-01-29
    • 1970-01-01
    • 2016-04-23
    • 2021-11-13
    • 2012-05-31
    • 1970-01-01
    • 2020-10-17
    • 2018-05-12
    • 1970-01-01
    相关资源
    最近更新 更多