节点mysql有一个奇怪的问题。我正在使用标准设置在本地计算机上运行mysql容器(docker)。我能够通过mysql.createConnection,但我的代码总是在connection.connect失败。容器上的MySQL错误日志显示没有尝试/失败的连接,我可以通过Workbench连接。有没有人有过尝试通过节点连接MySQL的经验。
router.get('/page', function(req,res){
const msg = 'My Query from config, tested and confirmed on Workbench';
var connection = mysql.createConnection({
host : '127.0.0.1',
user : 'user',
password : 'pw',
database : 'db',
port : 3306,
debug : true
});
console.log('Connect to server', connection.state); //Doesn't get past this guy
connection.connect(function(err) {
if (err) {
console.log('error connecting: ' + err.stack);
return err;
}
else {
console.log('connected as id ' + connection.threadId);
}
});
middleware.logger.debug('Make Query');
connection.query(msg, function(err, rows, fields) {
if (!err) {
console.log('The solution is: ', rows);
res.json('We got some rows!');
}
else {
console.log('Error while performing Query.', err);
res.json(err);
}
});
console.log('End Connection');
connection.end();
});
此外,还应注意:无论我的docker容器是否正在运行,我都会收到同样的错误。
编辑:好的,想修改我的问题,这实际上是快递路由器的一个问题。上面的扩展代码。