首先系统用的是manjaro(linux)系统,我在项目的目录下安装了mySQL,但是当我node timetrack_server.js文件时报了如下错误:
/home/dema/codeSpace/studyNode/testMySQL/timetrack_server.js:49
if (err) throw err;
^
Error: connect ECONNREFUSED 127.0.0.1:3306
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1121:14)
--------------------
at Protocol._enqueue (/home/dema/codeSpace/studyNode/testMySQL/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Protocol.handshake (/home/dema/codeSpace/studyNode/testMySQL/node_modules/mysql/lib/protocol/Protocol.js:51:23)
at Connection.connect (/home/dema/codeSpace/studyNode/testMySQL/node_modules/mysql/lib/Connection.js:118:18)
at Connection._implyConnect (/home/dema/codeSpace/studyNode/testMySQL/node_modules/mysql/lib/Connection.js:453:10)
at Connection.query (/home/dema/codeSpace/studyNode/testMySQL/node_modules/mysql/lib/Connection.js:198:8)
at Object.<anonymous> (/home/dema/codeSpace/studyNode/testMySQL/timetrack_server.js:40:4)
at Module._compile (internal/modules/cjs/loader.js:722:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:733:10)
at Module.load (internal/modules/cjs/loader.js:620:32)
at tryModuleLoad (internal/modules/cjs/loader.js:560:12)
timetrack_server.js的代码如下:
var http = require('http');
var work = require('./lib/timetrack');
var mysql = require('mysql'); //引入MySQL API
var db = mysql.createConnection({ //连接MySQL
host: '127.0.0.1',
user: 'myuser',
password: 'mypassword',
database: 'timetrack'
});
var server = http.createServer(function (req, res) {
switch (req.method) {
case 'POST': //HTTP POST请求路由
switch (req.url) {
case '/':
work.add(db, req, res);
break;
case '/archive':
work.archive(db, req, res);
break;
case '/delete':
work.delete(db, req, res);
break;
}
break;
case 'GET': //HTTP GET请求路由
switch (req.url) {
case '/':
work.show(db, res);
break;
case '/archived':
work.showArchived(db, res);
}
break;
}
});
db.query(
"CREATE TABLE IF NOT EXISTS work (" //建表SQL
+ "id INT(10) NOT NULL AUTO_INCREMENT, "
+ "hours DECIMAL(5,2) DEFAULT 0, "
+ "date DATE, "
+ "archived INT(1) DEFAULT 0, "
+ "description LONGTEXT,"
+ "PRIMARY KEY(id))",
function (err) {
if (err) throw err;
console.log('Server started...');
server.listen(3000, '127.0.0.1'); //启动HTTP服务器
}
);
菜鸡前端一枚,第一次使用数据库,不清楚是哪里的问题,还望麻烦各位帮解答
你的数据库服务中有这个数据库和相应的访问权限设置吗?