在本地运行并使用相同的 DATABASE_URL
连接到 Heroku 时,我能够完美地连接和查询数据库。
当相同的代码在 Heroku 上运行时——查询永远不会返回并且最终会超时。
数据库代码:
const connectionString = process.env.DATABASE_URL;
const pool = new Pool(
{
connectionString: connectionString,
ssl: true
}
);
public async query(text: any, params: any): Promise<any> {
return pool.query(text, params);
}
当我在本地主机上运行并附加到 Heroku Postgres 附加组件(爱好层)时,这按预期工作,但是当部署到 Heroku 时它不再工作。 DATABASE_URL
已正确加载。
答案 0 :(得分:1)
很奇怪,但如果有人遇到这个问题,我们的解决方案是:
我们使用了 pg
包并运行了 ^7.12.1
版本,这使我们能够在本地连接和查询 Heroku 托管数据库,但在将服务器部署在 Heroku 上时则不行。
修复是更新 pg
软件包,我们现在运行的是 ^8.5.1
版。