mysql - 插入错误 :connect ECONNREFUSED

标签 mysql node.js express

我正在尝试将一个值插入到我的数据库中,该数据库是 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/

相关文章:

javascript - PHP/MySQL 查询问题

javascript - 如何增加 Webstorm 调试器中显示的帧数?

javascript - 在node.js中迭代大量异步调用/结果(使用ES6/async/bluebird/generators)?

javascript - `this` 在 expressJS 路由处理程序中未定义

javascript - express/node.js API 中的高效服务器端 JavaScript 内存管理

mysql - 如何在SQL中添加时间间隔代码

mysql - 部分分组依据

mysql - dart:如何使用sqljocky连接器将数据从mysql显示到浏览器

javascript - __dirname 在带有 webpack 捆绑的 Node js 中不起作用

node.js - 使用express-jwt 仅保护部分路由