Node.js连接phpMyAdmin数据库出现AggregateError求助
Node.js mysql模块连接数据库出现AggregateError求助
我是网站开发新手,在phpMyAdmin中创建了sisiii_project数据库,使用Node.js的mysql模块编写测试脚本尝试连接时出现AggregateError,自行排查未解决,恳请帮助。
报错信息
Error connecting: AggregateError at internalConnectMultiple (node:net:1114:18) at afterConnectMultiple (node:net:1667:5) -------------------- at Protocol._enqueue (C:\Users\Vanja\Desktop\Book-Swap\backEnd\node_modules\mysql\lib\protocol\Protocol.js:144:48) at Protocol.handshake (C:\Users\Vanja\Desktop\Book-Swap\backEnd\node_modules\mysql\lib\protocol\Protocol.js:51:23) at Connection.connect (C:\Users\Vanja\Desktop\Book-Swap\backEnd\node_modules\mysql\lib\Connection.js:116:18) at Object.<anonymous> (C:\Users\Vanja\Desktop\Book-Swap\backEnd\test.js:11:4) at Module._compile (node:internal/modules/cjs/loader:1376:14) at Module._extensions..js (node:internal/modules/cjs/loader:1435:10) at Module.load (node:internal/modules/cjs/loader:1207:32) at Module._load (node:internal/modules/cjs/loader:1023:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:135:12) at node:internal/main/run_main_module:28:49
测试代码
const mysql = require('mysql'); const db = mysql.createConnection({ host: 'localhost', user: 'root', port: 8081, password: '', database: 'sisiii_project' }); db.connect((err) => { if (err) { console.error('Error connecting: ' + err.stack); return; } console.log('Connected as id ' + db.threadId); db.end(); // Close the connection immediately for this test });
数据库存在证明

解决建议
- 修正端口配置:你填的
8081是phpMyAdmin的网页访问端口,MySQL服务默认端口是3306,把配置里的端口改成3306再试。 - 检查MySQL服务状态:确认本地MySQL服务是否启动,可通过系统服务管理器或命令行
net start mysql启动服务。 - 核对用户密码:确认root用户的密码是否为空,若之前设置过密码,需在配置中填写正确的密码内容。
- 验证用户权限:在phpMyAdmin中检查root用户是否拥有
sisiii_project数据库的访问权限,若没有则分配对应权限。 - 更换维护中模块:当前
mysql模块已停止维护,建议改用mysql2模块,执行npm install mysql2安装后,代码用法基本一致,兼容性更好。
内容的提问来源于stack exchange,提问作者iSoulFeed1g
相关产品推荐
相关产品推荐

