Javascript Node.js MySQL连接错误。经济融合

Javascript Node.js MySQL连接错误。经济融合,javascript,mysql,node.js,Javascript,Mysql,Node.js,我有两台服务器,一台运行前端代码(Node.js,express),另一台运行带有PHPMyAdmin的MySQL,两者都是独立运行的,我可以确认MySQL数据库在3306上运行,但每当我尝试通过Node.js(下面的代码)连接时,我都会收到一个连接被拒绝的错误 const conn = mysql.createConnection({ host: '192.168.1.250', user: 'mcd', password: '*****

我有两台服务器,一台运行前端代码(Node.js,express),另一台运行带有PHPMyAdmin的MySQL,两者都是独立运行的,我可以确认MySQL数据库在3306上运行,但每当我尝试通过Node.js(下面的代码)连接时,我都会收到一个连接被拒绝的错误

    const conn = mysql.createConnection({
        host: '192.168.1.250',
        user: 'mcd',
        password: '**********',
        database: 'mcd'
    })

    conn.connect(function(err) {
        if (err) throw err;
    })

我为主机使用的IP地址是MySQL服务器的IP地址。因此不确定它为什么无法连接,因为它在默认端口上运行。

错误表明它无法连接到函数的宿主位置(在本例中为localhost)

dbConnection.js


以下是我与Node.js的连接:

pool = mysql.createPool({host:"localhost"
                        ,port:"3306"
                    ,database:"db_name"
                        ,user:"user_name"
                    ,password:"password_for_user"
                    ,timezone:"utc"
          ,multipleStatements:true
                         ,max:1000
                         ,min:1
           ,idleTimeoutMillis:defs.QUERY_TIMEOUT});  
 if ( pool && pool.getConnection ) {  
   pool.getConnection(function(errsts, conn) {
    var resp = {};

    if ( errsts ) {
      resp['error'] = errsts;
      return;        
    }
    resp['state'] = "connected";
        
    if ( cbRoutine ) {        
      cbRoutine(conn, resp, objParams);
        
      if ( conn != undefined ) {
        conn.release();
      }
    }
  });
}    
localhost适合我的使用,您应该将其替换为您的名称或IP地址。 defs.QUERY\u超时在我的源代码中定义为:

var QUERY_TIMEOUT         = 10 * 1000;

在我的代码中,cbRoutine是作为参数传入的回调函数,用于在成功连接时调用。

在此处复制错误消息,这将有助于确定问题(a)服务器未运行,即使您认为它正在运行。B) 服务器未在正确的IP上侦听,它仅绑定到
127.0.0.1
。C) 您的防火墙权限不足。很抱歉,以下是错误代码:errno:-61,代码:'ECONNREFUSED',系统调用:'connect',地址:'192.168.1.250',端口:3306,致命错误:true
var QUERY_TIMEOUT         = 10 * 1000;