在Node.js中使用biz.nf数据库遇ECONNREFUSED连接拒绝错误求助
解决Node.js连接biz.nf数据库出现ECONNREFUSED错误的方案
可能的原因及对应解决步骤:
检查biz.nf的数据库远程访问权限
免费主机biz.nf默认通常限制数据库仅允许内部服务器访问,禁止外部IP(比如你的本地电脑)直接连接。- 登录biz.nf账户后台,进入数据库管理面板;
- 查看是否有「远程访问」或「IP白名单」设置,把你的本地公网IP添加进去;
- 如果没有远程访问选项,说明只能将Node.js代码部署到biz.nf的主机上才能连接数据库。
核对数据库连接参数
- 从biz.nf后台复制最新的数据库连接信息,确认
host、port、user、database完全正确; - 临时替换
process.env.pass为明文密码测试,排除环境变量加载失败的问题(测试后务必改回环境变量方式)。
- 从biz.nf后台复制最新的数据库连接信息,确认
排查本地网络限制
- 关闭本地防火墙、杀毒软件,测试是否能连接;
- 用命令行测试端口连通性:
如果命令返回无法连接,说明网络层面存在阻断,要么是biz.nf未开放3306端口给外部,要么是你的网络运营商限制了该端口。telnet 185.176.43.99 3306 # 或者用nc命令 nc -zv 185.176.43.99 3306
更换数据库驱动包
你当前使用的mysql包已停止维护,建议切换到mysql2包:- 安装mysql2:
npm install mysql2 - 修改代码导入:
const {createPool} = require("mysql2")
新版本驱动的连接逻辑更稳定,可能解决兼容性问题。
- 安装mysql2:
内容的提问来源于stack exchange,提问作者Aditya Narayan
相关产品推荐
相关产品推荐

