Redis – ECONNREFUSED。 即使服务器正在运行

我已经读了关于ECONNREFUSED错误的stackoverflow的所有其他线程,但仍然没有工作。 目前我正在使用Ubuntu 12.04.1 LTS

对于testing,我有这个非常简单的代码:

var redis = require("redis"), client = redis.createClient(6379,"127.0.0.1"); redis.debug_mode = true; client.on("connect", function () { client.set("foo_rand000000000000", "some fantastic value"); }); 

但是每当我开始时,我所得到的都是ECONNREFUSED错误:

 root@oncn05:~/ba# node test.js hiredis parser not installed. Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED at RedisClient.on_error (/root/ba/node_modules/redis/index.js:196:24) at Socket.<anonymous> (/root/ba/node_modules/redis/index.js:106:14) at Socket.emit (events.js:67:17) at Array.0 (net.js:319:25) at EventEmitter._tickCallback (node.js:192:41) root@oncn05:~/ba# 

问题是:使用redis-cli连接到redis是没问题的。

 root@oncn05:~/ba# redis-cli redis 127.0.0.1:6379> 

日志也不显示任何可疑的东西。 为什么甚至说hiredisparsing器没有安装? 我用npm install hiredis安装了它。 但即使我没有。 它甚至在哪里使用?

我感谢每一个帮助。

首先:感谢所有阅读和/或回答我的问题的人。

通常,如果您传递createClient这些参数,则没有区别,因为127.0.0.1:6379是默认设置。

我意识到我有一个旧的node.js版本(0.6.xx),所以我决定彻底删除它,并重新安装它。

所以,首先我用命令sudo apt-get remove nodejs删除节点。 之后,我安装了新的版本,如下所述: 通过包pipe理器安装

 sudo apt-get install python-software-properties sudo add-apt-repository ppa:chris-lea/node.js sudo apt-get update sudo apt-get install nodejs 

现在一切按预期工作。 我不知道为什么我没有想到这一点。