mysql - 通过 EB 使用 EC2 实例连接到 RDS 端点的问题

标签 mysql amazon-web-services amazon-ec2 sequelize.js rds

我的 Elasticbeantalk 环境出现问题,不允许 EC2 实例连接到我的 RDS 实例。我似乎无法确定这可能是因为我将 RDS 安全组配置为允许任何 IP 的 MYSQL 连接并且在我的 EC2 实例安全组中具有相同的入站规则。我使用 nc -zv test-db.cffvlzfsdafasf6x7kir.us-east-2.rds.amazonaws.com 3306I Connection to ... 成功地从我的命令行测试了我的端点连接! 作为响应,这表明我的 RDS 实例上的安全组没有问题,但在我的 EC2 实例日志中我有 Unhandled rejection SequelizeConnectionRefusedError: connect ECONNREFUSED 127.0.0.1:3306.

这是我通过 Sequelize 的连接,我检查了我的环境变量的用户名和密码,我确认它们是正确的:

var Sequelize = require('sequelize');
var path = require('path');
var sequelize = new Sequelize(process.env.LOCAL_DATABASE, process.env.RDS_DATABASE || process.env.LOCAL_USERNAME, process.env.RDS_USERNAME || process.env.LOCAL_PASSWORD, process.env.RDS_PASSWORD, {
    host: process.env.RDS_HOSTNAME || 'localhost',
    port: process.env.RDS_PORT || '3306',
    dialect: 'mysql'
});

关于我应该执行的检查 list 或我可能出错的地方有什么建议吗?

最佳答案

这部分全错了:

var sequelize = new Sequelize(process.env.LOCAL_DATABASE, process.env.RDS_DATABASE || process.env.LOCAL_USERNAME, process.env.RDS_USERNAME || process.env.LOCAL_PASSWORD, process.env.RDS_PASSWORD, {
    host: process.env.RDS_HOSTNAME || 'localhost',
    port: process.env.RDS_PORT || '3306',
    dialect: 'mysql'
});

你不知何故设法把一个 || 放在你需要放一个 , 和一个 , 你应该放一个 的地方>||。试试这个:

var sequelize = new Sequelize(process.env.LOCAL_DATABASE || process.env.RDS_DATABASE, 
        process.env.LOCAL_USERNAME || process.env.RDS_USERNAME, 
        process.env.LOCAL_PASSWORD || process.env.RDS_PASSWORD, {
    host: process.env.RDS_HOSTNAME || 'localhost',
    port: process.env.RDS_PORT || '3306',
    dialect: 'mysql'
});

关于mysql - 通过 EB 使用 EC2 实例连接到 RDS 端点的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38965029/

相关文章:

javascript - node-mysql 计时

php - 这个 MAX() GROUP BY 查询有什么问题?

javascript - GraphQL AWS Amplify @connection 未引入连接数据

java - AWS Lambda S3Event 反序列化

java - 通过 Java 获取 EC2 实例的 instance-id

python - 带有 ipython 笔记本的 Amazon ec2 实例

php - 为新表添加另一行时,在 3 个表中插入一行

amazon-web-services - 将参数输入到 Cloudwatch 事件规则 Cloudformation 中的输入参数

amazon-web-services - AWS EC2 实例响应中具有相应状态转换原因的实例状态有哪些类型

php - 在 Android 浏览器中运行网页