代码无报错但数据库未连接,求排查Node.js+MySQL连接问题
问题分析与解决
1. 核心问题:模块加载语法错误
你的index.js中加载数据库连接模块的代码写错了:
require = ('./db/conn'); // 错误写法:给require重新赋值为字符串,未加载模块
正确写法应该去掉等号:
require('./db/conn'); // 正确加载conn.js模块,执行其中的数据库连接逻辑
原来的错误写法会导致conn.js里的代码完全不会执行,自然不会输出数据库连接成功的日志。
2. 潜在端口冲突问题
你的conn.js中把MySQL端口设为了8800,但你的express服务器已经占用了这个端口,而MySQL默认端口是3306,这会导致即使修复了模块加载问题,数据库连接也会失败。需要修改conn.js中的端口配置:
const conn = mysql.createConnection({ user:'root', host:'localhost', port:'3306', // 改为MySQL实际使用的端口,默认是3306 password:'', database:'liveproject', });
修改后验证
修复以上两处问题后,重新启动服务,应该会看到以下输出:
[nodemon] restarting due to changes... [nodemon] starting `node index.js` Database connection successful server running on port 8800
内容的提问来源于stack exchange,提问作者M-Joy
相关产品推荐
相关产品推荐

