You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Sequelize ORM与Express连接到ElephantSQL PostgreSQL实例?

问题解决:Sequelize db:create 报 getaddrinfo EAI_FAIL 错误

错误原因

你把完整的PostgreSQL连接URL填到了Sequelize配置的host字段里,但Sequelize的host字段仅接受数据库服务器的域名或IP地址,而非完整连接串。这导致Sequelize尝试将整个URL当作主机名解析,自然触发getaddrinfo EAI_FAIL解析失败错误。而pg客户端支持直接使用完整URL连接,所以pg能正常工作。

另外注意:你配置里的password值(pf10aJ)和URL里的密码(pf10aL)有一个字符差异,后续需要保持一致,避免连接失败。

解决方案

有两种修正方式,任选其一即可:

方式1:拆分连接参数(推荐)

将host改为服务器域名,保留其他独立参数:

{
  "development": {
    "username": "elcaaklk",
    "password": "oliBfN1v8h7-JPE3_UN3LJeT3-pf10aJ",
    "database":"elcaaklk",
    "host": "drona.db.elephantsql.com",
    "dialect": "postgres",
    "port": 5432 // ElephantSQL默认使用5432端口,可省略
  }
}

方式2:使用url字段替代独立参数

直接将完整连接URL填入url字段,无需拆分:

{
  "development": {
    "url": "postgres://elcaaklk:oliBfN1v8h7-JPE3_UN3LJeT3-pf10aJ@drona.db.elephantsql.com/elcaaklk",
    "dialect": "postgres"
  }
}

验证

修改配置后,重新执行sequelize db:create命令即可正常执行。

内容的提问来源于stack exchange,提问作者Worldwide

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 21:55:48