Node-MySQL(felixge)连接问题

时间:2011-02-21 20:49:32

标签: mysql node.js

我在Ubuntu 10.04 LTS VM上运行带有Node-Mysql的Node.js 4.1。然而,我遇到了一些奇怪的问题,而且我不确定是什么导致了它。

我偶尔无法连接到数据库,有时它工作正常。当我无法连接时,我在mysql端的连接中看到连接弹出窗口,用户为“unauthenticated”,状态为“从网络读取”,但几秒后它就会消失。 .connect()回调永远不会触发,我不知道从哪里开始。

我正在使用从主机到vm的端口转发,22用于SSH,80用于http请求,但除此之外一切正常。 mysql上的主机显示为主机,而不是VM,尽管即使成功连接也是如此。

不确定重要性,但连接在VM上的TIME_WAIT中保持,并且本地地址:端口与MySQL不同,也用于成功连接。

1 个答案:

答案 0 :(得分:1)

您使用的是最新版本(0.9.2)吗?如果是,则不再使用.connect()

https://github.com/felixge/node-mysql/wiki/Upgrading-to-0.9.2+

所以而不是:

var client = require('mysql').Client();
client.connect();
client.query('SELECT 1', function() {
});

你现在必须写:

var client = require('mysql').createClient();
client.query('SELECT 1', function() {
});