我正在尝试通过我的Google Firebase Functions后端连接到我的AWS rds postgres数据库。经过一番尝试和错误之后,我成功地设法在本地连接了它(运行firebase emulators:start --only functions
并成功查询了数据库)。但是,将功能部署到远程Google Firebase功能服务器时,我遇到了{ Error: connect ECONNREFUSED 127.0.0.1:3306
。
我已将我的AWS RDS数据库设置为可公开访问。我知道我需要允许来自Google Firebase服务器的入站流量,但是根据我设法进行的挖掘,this显示我正在使用的可用区(us-central-1)具有数十个IP地址关联用它。我放弃了,并允许所有传入流量(是的,我知道那很糟糕,但我还没有投入生产)。但是,我仍然遇到相同的错误!
关于如何使它正常工作以及如何正确连接它的任何想法,以便我不允许所有传入的流量?
以下是我如何在Firebase函数中连接到AWS数据库的方法。函数本身(存储代码的位置)位于us-central:
const {Pool} = require('pg');
private static readonly config = {
user: 'xxxxxxxx',
host: 'xxxxxxx.yyyyyyyyy.us-east-2.rds.amazonaws.com',
database: 'postgres',
password: 'xxxxxxxxxx',
port: 5432
};
private static readonly pool = new Pool(RemoteDBHandler.config);
编辑:现在看,奇怪的是正在localhost(127.0.0.1)上尝试连接。我不知道为什么会这样,因为我正在连接到AWS服务器。因此,我认为this不适合我