【发布时间】:2013-08-12 15:50:00
【问题描述】:
我将 node.js 用于应用程序,我还使用 mysql 来允许用户在应用程序上进行连接。
我在本地使用该应用程序,它运行良好,没有崩溃,没什么不好。
今天我尝试将js服务器放在我的专用服务器上,将客户端放在我的web服务器上。
现在它已上传,我尝试启动服务器,但几秒钟后它因这些回溯而崩溃:
events.js:48
throw arguments[1]; // Unhandled 'error' event
Error: Connection lost: The server closed the connection.
at Protocol.end (/root/node_modules/mysql/lib/protocol/Protocol.js:73:13)
at Socket.onend (stream.js:80:10)
at Socket.emit (events.js:88:20)
at TCP.onread (net.js:388:51)
连接代码很简单:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'hostname',
user : 'username',
password : 'password',
database : 'database',
});
connection.connect();
我尝试在连接后向我的数据库添加一列,它工作正常,我的数据库与 js 服务器位于不同的服务器上,接受连接并添加列。
我不知道为什么我在本地工作时没有这些错误...
【问题讨论】:
-
你能试试这个connection.connect(function(err) { console.log(err); });看看你是否打印了任何错误
-
我刚刚打印了一个“null”,然后服务器在一段时间后崩溃了。
-
你用的是什么 NPM 模块?
-
我正在使用 mysql、MD5 和 socket.io
-
由于 MySQL 服务器似乎明确地关闭了连接,它可能会在某处记录原因。检查您的 MySQL 服务器日志文件。
标签: javascript mysql node.js