Javascript 尝试在visual studio代码中使用SAM插件构建lambda函数,并尝试连接到MYSQL RDS实例,但不起作用
我正在使用visual studio代码SAM选项构建lambda函数。我正在尝试连接VPC网络中的RDS实例(MYSQL)。 我尝试使用以下代码连接。我没有收到任何错误,但它没有连接到数据库。我到处都找了,但没有找到任何解决办法。我试着跟随,但没有成功Javascript 尝试在visual studio代码中使用SAM插件构建lambda函数,并尝试连接到MYSQL RDS实例,但不起作用,javascript,node.js,visual-studio-code,aws-lambda,sam,Javascript,Node.js,Visual Studio Code,Aws Lambda,Sam,我正在使用visual studio代码SAM选项构建lambda函数。我正在尝试连接VPC网络中的RDS实例(MYSQL)。 我尝试使用以下代码连接。我没有收到任何错误,但它没有连接到数据库。我到处都找了,但没有找到任何解决办法。我试着跟随,但没有成功 const fs = require('fs'); const mysqlssh = require('mysql-ssh'); mysqlssh.connect( { host: '
const fs = require('fs');
const mysqlssh = require('mysql-ssh');
mysqlssh.connect(
{
host: 'XXX.XXX.XX.XX',
user: 'ec2-user',
privateKey: fs.readFileSync('./XXXX-txlarge.pem')
},
{
host: '-staging-instanceXXXXX.rds.amazonaws.com',
user: 'user',
password: 'password',
database: 'db'
}
)
.then(client => {
client.query('SELECT * FROM users', function (err, results, fields) {
if (err) throw err
console.log(results);
mysqlssh.close()
})
})
不要使用基于隧道的sql连接模块
mysql ssh
,尝试使用简单的mysql
模块
const fs = require('fs');
const mysql = require('mysql');
let connection = mysql.createConnection(
{
host: 'XXX.XXX.XX.XX-staging-instanceXXXXX.rds.amazonaws.com',
user: 'user',
password: 'password',
database: 'db'
}
);
connection.connect();
connection.query('SELECT * FROM users', function (err, results, fields) {
if (err) throw err
console.log("rows: " + rows);
context.succeed('Success');
});
PS:您可能需要根据需要修改一些代码,但这是您应该尝试执行的操作。错误是什么?我没有收到任何代码,但没有连接到数据库尝试控制台客户端对象并显示results@sohan我打印了它给我的对象[object object],然后我尝试打印连接对象(客户端)的状态它正在断开连接。我对node js和lambda非常陌生。这是我的第一个lambda函数。因此,请告诉我我是否做了任何愚蠢或错误的事情。您可以尝试
JSON.stringyfy(客户端)
该对象并粘贴输出。它可能包含为什么断开连接的结果。也请检查@Sonali。如果您对这个答案进行投票,这将非常好,因为这将完成验收过程