繁体   English   中英

使用 sequelize 连接到 aws rds 时连接被拒绝

[英]Connection refused when connecting with sequelize to aws rds

我已尝试以各种可能的方式连接到 aws rds,但在使用 sequelize 时出现连接被拒绝错误,所以我想知道在建立连接时是否需要设置或包含设置。 该代码在我的本地机器上运行,如果我推送到 heroku,但是我需要为这个项目使用 aws 实例。

我使用 sequelize CLI 生成一个 index.js 文件,其代码是:

var path      = require('path');
var Sequelize = require('sequelize');
var basename  = path.basename(__filename);
const config    = require(path.join(__dirname,'../config/config.js'));
const db        = {};

console.log('config: ',config);

if (config.env === 'production') {
    console.log('i ran');
  var sequelize = new Sequelize(config.use_env_variable);
} else {
    console.log('else ran');
      var sequelize = new Sequelize(config.db.database, config.db.username, config.db.password, {
      dialect:config.db.dialect});
}

被抛出的错误是: 在此处输入图像描述

如您所见,配置变量正在执行此操作,并且我已确保设置了 env 变量。 我已经三重检查以确保用户名和密码正确。 我还尝试使用 aws 提供的端点而不是 localhost 但也失败了。 我已确保更改 aws 上的安全设置以允许任何 IP 地址访问它,并且我已成功使用 mysql 工作台进行连接,因此必须有其他特定于 sequelize 或我使用的代码正确的东西?

更新我的 config.js 文件是这样的: 在此处输入图像描述

万一有人遇到与亚马逊的连接问题...

您的主机设置为“localhost”,但这必须设置为您要连接的主机(而不是来自)。 在 aws rds 情况下,这将如下所示:

some-rds-name-inserted-here.74389nctj.eu-west-2.rds.amazonaws.com

检查您的 RDS 网络是否可以限制在不同的区域。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM