Ich versuche, eine Verbindung zu meiner Amazon RDS (MySQL) -Instanz aus einem Nodejs-Code in Lambda mit dem Paket "felixge/node-mysql" herzustellen. Ich brauche Hilfe, um herauszufinden, was ich falsch mache. Ich erhalte den Fehler "connect ETIMEDOUT". Mein Code wird in Lambda gehostet, und sowohl Lamda als auch RDS gehören demselben Konto und derselben Region an. Ich habe auch die RDSFullAccess-Richtlinie an die IAM-Rolle angehängt. Auf die RDS-Instanz kann auch von allen IPs aus zugegriffen werden (keine Whitelist/Blacklist-IPs).Fehler beim Verbinden mit Amazon RDS (MySQL) von node-mysql
Zur gleichen Zeit kann ich von meiner lokalen MySQL Workbench mit denselben Anmeldeinformationen verbinden.
Hier ist mein Code:
var connection = mysql.createConnection({
host : 'xxxxxxxx.crhmtrscnbgt.us-east-1.rds.amazonaws.com',
user : 'my_user',
password : 'my_passowrd',
database : 'my_db',
port : '3306',
debug : true
});
connection.connect(function(err) {
if (err) {
console.error('error connecting: ' + err.stack);
return;
}
console.log('connected as id ' + connection.threadId);
});
var query = "SELECT * FROM users";
connection.query(query, function(err, rows) {
if (err) throw err;
console.log(rows);
});
Ausgang ist:
2016-04-12T13:32:34.367Z fa04401a-00b2-11e6-9a23-2dd70e33cc5d error connecting: Error: connect ETIMEDOUT
at Connection._handleConnectTimeout (/var/task/node_modules/mysql/lib/Connection.js:412:13)
at Socket.g (events.js:180:16)
at Socket.emit (events.js:92:17)
at Socket._onTimeout (net.js:327:8)
at _makeTimerTimeout (timers.js:438:11)
at Timer.unrefTimeout [as ontimeout] (timers.js:502:5)
--------------------
at Protocol._enqueue (/var/task/node_modules/mysql/lib/protocol/Protocol.js:141:48)
at Protocol.handshake (/var/task/node_modules/mysql/lib/protocol/Protocol.js:52:41)
at Connection.connect (/var/task/node_modules/mysql/lib/Connection.js:123:18)
at Object.Workout.save (/var/task/storage.js:32:24)
at Object.storage.saveWorkout (/var/task/storage.js:62:28)
at intentHandlers.NewExcerciseIntent (/var/task/intentHandlers.js:19:17)
at AlexaSkill.eventHandlers.onIntent (/var/task/AlexaSkill.js:65:27)
at AlexaSkill.requestHandlers.IntentRequest (/var/task/AlexaSkill.js:28:37)
at AlexaSkill.execute (/var/task/AlexaSkill.js:105:24)
at exports.handler (/var/task/index.js:9:19)