Javascript 通过node.js连接mysql时拒绝访问
我正在尝试通过node.js连接到mysql服务器主机:localhost,我对node.js真的很陌生,我不知道怎么做,请帮助 我用于连接到服务器的当前代码Javascript 通过node.js连接mysql时拒绝访问,javascript,mysql,node.js,Javascript,Mysql,Node.js,我正在尝试通过node.js连接到mysql服务器主机:localhost,我对node.js真的很陌生,我不知道怎么做,请帮助 我用于连接到服务器的当前代码 var client = require('socket.io').listen(8080).sockets, mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'root'
var client = require('socket.io').listen(8080).sockets,
mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '',
database : 'testDatabase',
port : '3306'
});
connection.connect();
var strQuery = 'select * from users';
connection.query( strQuery, function(err, rows){
if(err){
throw err;
}else{
console.log(rows);
}
});
connection.end();
这显然给出了下面的错误
Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'prashanthsun9'@'localhost
' (using password: YES)
at Handshake.Sequence._packetToError (C:\wamp\www\node_chat\js\node_modules\
mysql\lib\protocol\sequences\Sequence.js:30:14)
at Handshake.ErrorPacket (C:\wamp\www\node_chat\js\node_modules\mysql\lib\pr
otocol\sequences\Handshake.js:99:18)
at Protocol._parsePacket (C:\wamp\www\node_chat\js\node_modules\mysql\lib\pr
otocol\Protocol.js:205:24)
at Parser.write (C:\wamp\www\node_chat\js\node_modules\mysql\lib\protocol\Pa
rser.js:62:12)
at Protocol.write (C:\wamp\www\node_chat\js\node_modules\mysql\lib\protocol\
Protocol.js:37:16)
at Socket.<anonymous> (C:\wamp\www\node_chat\js\node_modules\mysql\lib\Conne
ction.js:73:28)
at Socket.EventEmitter.emit (events.js:95:17)
at Socket.<anonymous> (_stream_readable.js:746:14)
at Socket.EventEmitter.emit (events.js:92:17)
at emitReadable_ (_stream_readable.js:408:10)
--------------------
at Protocol._enqueue (C:\wamp\www\node_chat\js\node_modules\mysql\lib\protoc
ol\Protocol.js:110:48)
at Protocol.handshake (C:\wamp\www\node_chat\js\node_modules\mysql\lib\proto
col\Protocol.js:42:41)
at Connection.connect (C:\wamp\www\node_chat\js\node_modules\mysql\lib\Conne
ction.js:99:18)
at Object.<anonymous> (C:\wamp\www\node_chat\js\server.js:11:12)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
请帮忙,请帮忙 尝试查询时,连接尚未设置。 要调试,请更改此行:
connection.connect();
到
因此,您将获得连接不正常的原因的错误跟踪。尝试将您的npm mysql版本升级到^2.1.1。您是否能够使用该用户连接到该数据库,否则,例如使用?是吗?是的,我已经授予该用户访问该数据库的权限,我甚至创建了新用户和数据库,并给了新用户所有权限。基本上,上帝模式不起作用,我不知道我是否必须遵循一些特定的步骤来实现这一点,据我所知,我现在感觉很傻:
connection.connect(function(err, conn) {
if(err) {
console.log('MySQL connection error: ', err);
process.exit(1);
}
});