Я закончил работу над своим проектом и пытаюсь развернуть его в AWS. В качестве веб-сервера у меня есть экземпляр ec2 со следующими деталями конфигурации:
- NodeJS, использующий порт 5000
- PM2 (постоянная поддержка сервера)
- NGINX как чтение веб-сервера из моего файла сборки
- MySQL в экземпляре ec2 в качестве базы данных. (используя порт 3306)
Моя проблема в том, что у меня проблемы с установлением соединения с моей локальной машины с моим экземпляром AWS ec2, в котором есть база данных MYSQL. Я открыл MYSQL верстак и могу там нормально подключиться, но когда я пытаюсь установить строку подключения к БД из node.js, это выдает мне ошибку.
Мне удалось успешно подключиться к БД в рабочей среде MYSQL, но как я могу подключиться к ней сейчас из строки подключения nodejs?
Я уже попробовал следующее:
1) В группе безопасности AWS открытие правила TCP для всего входящего трафика через порт 5000
2) В группе безопасности AWS открываем правило MYSQL / Aurora для всего входящего трафика через порт 3306
3) Предоставление пользователю всех прав на . , а также сброс и перезапуск сервера MySQL.
Ошибка выдает меня в консоли.
`{ Error: connect ECONNREFUSED 14.54.xxx.xx:3306
at Object._errnoException (util.js:1019:11)
at _exceptionWithHostPort (util.js:1041:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1175:14)
--------------------
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
address: '14.54.xxx.xxx',
port: 3306,
fatal: true }`
Вот мой код, пытающийся установить соединение:
```var mysql = require("mysql");
// Local Works just fine
// var connection = mysql.createConnection({
// host: "localhost",
// user: "root",
// password: "xxx",
// database: "devdb",
// charset: "utf8mb4"
// });
// Production Connection to AWS MYSQL instance (stuck on)
var connection = mysql.createConnection({
host: "14.54.xxx.xxx",
port: "3306",
user: "jordan",
password: "xxx",
database: "productiondb"
charset: "utf8mb4"
});
// Test the db connection
connection.connect(function(err) {
if (err) {
console.log(err);
} else {
console.log("Connected!");
}
});
module.exports = connection;
```
Я ожидаю, что смогу успешно подключиться к экземпляру БД из моего NodeJS