我正在使用Lambda将数据插入RDS。我有〜1000条记录。但是,我在测试功能时收到以下错误。当我检查数据库时,只有一些(〜160)条记录被成功插入。我找不到任何有用的信息,因为我确实已成功连接到数据库。
我使用节点,基本上使用Promise.map处理异步。我相信问题不在于代码,而是网络问题,也许是某些问题限制了我的查询数量。谁能给我一些见识?
{
"cause": {
"errorno": "ETIMEDOUT",
"code": "ETIMEDOUT",
"syscall": "connect",
"fatal": true
},
"isOperational": true,
"errorno": "ETIMEDOUT",
"code": "ETIMEDOUT",
"syscall": "connect",
"fatal": true
}
答案 0 :(得分:0)
您可以尝试在数据库中设置超时时间:
查看超时:
show VARIABLES like '%timeout%'
设置:
SET GLOBAL connect_timeout=28800
SET GLOBAL wait_timeout=28800
SET GLOBAL interactive_timeout=28800
答案 1 :(得分:0)
查询完成后,您需要关闭所有数据库连接,以使lambda正确退出,否则它将始终超时。
此外,请确保在lambda处理程序内启动数据库连接。这将确保在启动lambda函数时始终创建数据库连接,并且在重用lambda容器时永远不会遇到任何Connection closed
问题