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

Sequelize连接wikistack库报Connection terminated unexpectedly错误

报错根因

这个连接错误是配置错误直接导致的:

  1. 数据库连接端口配置错误:PostgreSQL 服务默认监听端口是5432,你在连接串里写的1337是给Express web服务分配的监听端口,Sequelize按照这个配置会把数据库请求发给Express服务,根本碰不到PostgreSQL服务,自然会触发连接意外终止的报错。
  2. Promise未做错误捕获:db.authenticate()是异步Promise方法,你只写了.then()的成功回调,没有写.catch()处理连接失败的场景,连接失败时就会抛出UnhandledPromiseRejectionWarning警告。
  3. 代码里残留了无意义的enter code here文本,属于编辑时的冗余内容,虽然不直接触发报错,但建议清理。
修复方案
  • 修改/models/index.js中的数据库连接串,把端口替换为PostgreSQL的默认服务端口,如果你本地PostgreSQL自定义过端口、设置了账号密码,对应调整连接串参数即可,默认配置参考如下:
const Sequelize = require('sequelize');
const db = new Sequelize('postgres://localhost:5432/wikistack');

module.exports = {
  db
}
  • 清理app.js中db.authenticate()行尾残留的enter code here文本,补上Promise的错误捕获逻辑,相关代码修改为:
db.authenticate()
  .then(() => {
    console.log('connected to the database');
  })
  .catch(err => {
    console.error('数据库连接失败:', err);
  })
  • 启动项目前先确认本地PostgreSQL服务处于运行状态,且wikistack数据库已经提前创建完成。

如果修改完以上配置仍无法连接,依次检查:PostgreSQL服务是否正常启动、本地防火墙是否拦截了5432端口、PostgreSQL的pg_hba.conf配置是否允许本地localhost连接。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 04:30:54