Node.js Node-MySQL模块未连接到数据库 [英] Nodejs node-mysql module not connecting to database

查看:100
本文介绍了Node.js Node-MySQL模块未连接到数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在运行此脚本:

var mysql      = require('mysql');

var connection = mysql.createConnection("mysql://localhost/");

connection.connect();
console.log(connection)

但是出现错误...

{ config: 
   { host: 'localhost',
     port: 3306,
     socketPath: undefined,
     user: undefined,
     password: undefined,
     database: '',
     insecureAuth: false,
     supportBigNumbers: false,
     debug: undefined,
     timezone: 'local',
     flags: '',
     queryFormat: undefined,
     pool: undefined,
     typeCast: true,
     maxPacketSize: 0,
     charsetNumber: 33,
     clientFlags: 193487 },
  _socket: 
   { _handle: 
      { writeQueueSize: 0,
        owner: [Circular],
        onread: [Function: onread] },
     _pendingWriteReqs: 0,
     _flags: 0,
     _connectQueueSize: 0,
     destroyed: false,
     errorEmitted: false,
     bytesRead: 0,
     _bytesDispatched: 0,
     allowHalfOpen: undefined,
     _connecting: true,
     writable: true,
     _events: 
      { data: [Function: ondata],
        end: [Object],
        close: [Object],
        error: [Object],
        drain: [Function: ondrain] } },
  _protocol: 
   { readable: true,
     writable: true,
     _config: 
      { host: 'localhost',
        port: 3306,
        socketPath: undefined,
        user: undefined,
        password: undefined,
        database: '',
        insecureAuth: false,
        supportBigNumbers: false,
        debug: undefined,
        timezone: 'local',
        flags: '',
        queryFormat: undefined,
        pool: undefined,
        typeCast: true,
        maxPacketSize: 0,
        charsetNumber: 33,
        clientFlags: 193487 },
     _connection: [Circular],
     _callback: null,
     _fatalError: null,
     _quitSequence: null,
     _handshakeSequence: 
      { _callback: undefined,
        _ended: false,
        _callSite: '    at Handshake.Sequence (/usr/local/lib/node_modules/mysql/lib/protocol/sequences/Sequence.js:15:21)\n    at new Handshake (/usr/local/lib/node_modules/mysql/lib/protocol/sequences/Handshake.js:9:12)\n    at Protocol.handshake (/usr/local/lib/node_modules/mysql/lib/protocol/Protocol.js:41:50)\n    at Connection.connect (/usr/local/lib/node_modules/mysql/lib/Connection.js:63:18)\n    at Object.<anonymous> (/Users/itaccess/Desktop/test.js:5:12)\n    at Module._compile (module.js:449:26)\n    at Object.Module._extensions..js (module.js:467:10)\n    at Module.load (module.js:356:32)\n    at Function.Module._load (module.js:312:12)\n    at Module.runMain (module.js:492:10)',
        _config: [Object],
        _handshakeInitializationPacket: null,
        _events: [Object] },
     _destroyed: false,
     _queue: [ [Object] ],
     _handshakeInitializationPacket: null,
     _parser: 
      { _supportBigNumbers: false,
        _buffer: <Buffer >,
        _longPacketBuffers: [],
        _offset: 0,
        _packetEnd: null,
        _packetHeader: null,
        _onPacket: [Function],
        _nextPacketNumber: 0,
        _encoding: 'utf-8',
        _paused: false },
     _events: 
      { drain: [Object],
        error: [Object],
        end: [Object],
        close: [Object],
        data: [Function: ondata],
        unhandledError: [Function] } },
  _connectCalled: true }
{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect',
  fatal: true }

还有控制台中的此错误...

And this error in the console...

/Users/itaccess/Desktop/test.js:10
  if (err) throw err;
                 ^
Error: connect ECONNREFUSED
    at errnoException (net.js:769:11)
    at Object.afterConnect [as oncomplete] (net.js:760:19)
    --------------------
    at Handshake.Sequence (/usr/local/lib/node_modules/mysql/lib/protocol/sequences/Sequence.js:15:21)
    at new Handshake (/usr/local/lib/node_modules/mysql/lib/protocol/sequences/Handshake.js:9:12)
    at Protocol.handshake (/usr/local/lib/node_modules/mysql/lib/protocol/Protocol.js:41:50)
    at Connection.connect (/usr/local/lib/node_modules/mysql/lib/Connection.js:63:18)
    at Object.<anonymous> (/Users/itaccess/Desktop/test.js:5:12)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)

我确定不需要用户名/密码,并且我也尝试过使用各种密码.我尝试使用对象设置设置和查询字符串.我尝试过显式添加端口,无论如何这是默认端口.

I am certain the username/password is not required, and I have tried with various passwords I am sure of too. I have tried using object to set settings, and query string. I have tried adding the port explicitly, which is the default port anyway.

为什么不连接?

推荐答案

尝试类似的方法,我想您确定需要登录名和密码

try something like this , I think you need login and password for sure

一些示例代码

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'me',
  password : 'secret',
});

connection.connect();

connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
  if (err) throw err;

  console.log('The solution is: ', rows[0].solution);
});

connection.end();

这篇关于Node.js Node-MySQL模块未连接到数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆