我正在尝试将一个值插入到我的数据库中,该数据库是 mydb 并且该表是使用 2 个字段用户名和密码登录的。我正在使用 express.js 和 MySQL。插入查询代码为
exports.insert = function(req,res){
client.query('insert into' +TABLE+ ' SET username=?,password=?'
, [req.body.txtUser,req.body.txtPassword]
,
function(err,result){
if(err){
console.log("error in insertion:"+ err.message);
}
else{
console.log("query executed");
res.json("data inserted");
}
}
);
}
当我启动服务器时,它正常启动;y 并显示消息:
The Express server listening on port 3000 in development mode
但是,当我访问注册页面并插入值并按提交时,会生成以下错误
error in insertion:connect ECONNREFUSED
谁能帮帮我?
最佳答案
这不是 Node.js 问题。您通常无法连接到您的 MySQL 客户端。
您需要在 MySQL 中授予您用于连接的用户名的访问权限。授予访问权限,然后尝试使用 MySQL 客户端或管理工具(例如 MySQL Admin 或命令行 mysql
客户端)手动登录以测试此连接。请记住,在 MySQL 中,您必须为 localhost
以及远程设置。我相信它仍然默认为 localhost
。例如您需要为其他主机名显式设置 admin@*
。阅读 MySQL 手册 here
一旦您的客户端正常工作,那么您的 node.js 客户端应该使用相同的用户名和设置。
关于mysql - 插入错误 :connect ECONNREFUSED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11072495/