Sails-mysql拒绝注册连接
我在AWS实例上安装了Sails应用程序,并安装了所有依赖项,但没有出现明显的问题。 但是,每次我尝试启动应用程序,我收到以下错误。
error: AdapterError: Connection is already registered
我还没有设法成功地提升帆上的实例和sails-mysql是新鲜安装的,所以不应该注册连接。
我采取了以下步骤来部署我的应用程序..
- 设置一个MySql RDS实例(EU-West)
- 创build并build立了Ubuntu AMD-64 t2.micro EC2实例(EU-West)
- 安装了所有先决条件(Git,NVM,NodeJs,Sails等)
- 克隆我的帆船项目
- 安装了Sails的依赖关系
- 正确configurationSails的连接设置以使用我的RDS实例。
我知道我的连接设置是正确的,因为我已经能够在我的本地机器上运行Sails并连接到我的RDS实例,并且始终能够毫无问题地解除连接。
我也可以使用SequelPro连接到我的RDS实例,没有任何问题。
过去我曾经遇到过依赖关系的问题,但是设法解决了这些问题,并且没有在我的本地机器上或者EC2实例上。
在search了一段时间之后,我遇到了一些有类似问题的用户,但是用Waterline的拆解方法设法解决了这些问题,但我不确定如何实现这一点。
我已尽力提供尽可能多的信息,任何帮助都将受到大力赞赏。
风帆版本: 0.12.11
先谢谢你。
我设法解决这个问题,执行以下操作:
-
在
config/bootstrap.js
中将我的环境切换到生产环境 -
在
connections.js
添加connectTimeout: 20000
以确保请求在连接build立之前不超时。例如。
process.env.NODE_ENV = 'development'
- 确保RDS的安全组入站规则允许来自与我的EC2实例关联的安全组的连接。
types: MySQL / Aurora
协议: TCP
端口范围: 3306
来源: <您的安全组ID>
以上几点也意味着我在与RDS通信时克服了握手超时的问题。