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

Node.js连接MySQL查询返回500 Internal Server Error问题求助

问题排查与解决方案

1 优先验证数据库连接配置

  • host:如果MySQL服务和你的后端服务部署在同一台机器,127.0.0.1是正确配置,若为远程数据库请替换为对应远程服务的IP地址
  • 数据库名:你当前配置中填写的Recomend an Adventure存在拼写风险(正确拼写为Recommend),请核对MySQL中实际的数据库名,确保大小写、空格、拼写完全匹配
  • 账号权限:确认suggesteventuser用户拥有对应数据库的访问权限,且允许从127.0.0.1地址登录,密码和实际配置完全一致
  • 端口:确认MySQL服务实际监听端口是否为默认的3306,若有修改请替换为实际端口

2 添加连接状态监听排查问题

你当前的代码没有监听数据库连接的错误状态,添加以下代码可以直接在服务端控制台打印连接失败的具体原因:

Connection.connect((err) => {
  if (err) {
    console.error('数据库连接失败具体报错: ', err);
    return;
  }
  console.log('数据库连接正常');
});

3 查看服务端错误日志定位问题

你在路由的catch逻辑中已经打印了错误信息,请直接查看后端服务控制台的输出内容,不同错误对应不同解决方向:

  • 报错ER_ACCESS_DENIED_ERROR:账号密码错误,或用户没有对应登录权限
  • 报错ER_BAD_DB_ERROR:配置的数据库名不存在
  • 报错ECONNREFUSED:MySQL服务未启动,或host、端口配置错误
  • 报错为SQL语法相关:检查db.Blogs.all()方法内的SQL语句书写是否正确

4 额外优化建议

你当前使用的mysql依赖已经停止维护多年,建议替换为仍在活跃维护的mysql2依赖,二者API基本兼容,替换后稳定性和兼容性更好。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 09:06:07