无法访问我的redis实例

时间:2011-11-14 13:42:14

标签: ubuntu redis

我最近遇到了redis的问题。我的设置如下:

  • Ubuntu 11.11
  • Redis 2.4.2(不是来自回购,但已编译)
事情是,我突然无法访问redis服务器了!它启动就好了,日志看起来像这样:

[23759] 14 Nov 14:37:15 - DB 0: 473 keys (0 volatile) in 512 slots HT.
[23759] 14 Nov 14:37:15 - DB 1: 2882 keys (0 volatile) in 4096 slots HT.
[23759] 14 Nov 14:37:15 - DB 4: 6 keys (0 volatile) in 8 slots HT.
[23759] 14 Nov 14:37:15 - DB 8: 6094 keys (0 volatile) in 8192 slots HT.
[23759] 14 Nov 14:37:15 - 0 clients connected (0 slaves), 26706728 bytes in use

我尝试连接时,例如redis-cli我会暂停。

我已经将超时设置为0并通过nmap检查了打开的端口,一切似乎都很好。有没有人与redis和/或Ubuntu 11.11有类似的问题?我怀疑新贵是真正的问题...

1 个答案:

答案 0 :(得分:3)

我在多个Ubuntu 11.11实例上编译,安装并大量使用Redis。似乎有可能发生三件事之一。

  1. Redis作为守护进程运行。 Upstart与守护进程(后台)进程无法很好地协作。修改你的redis.conf并确保你没有将Redis作为守护进程运行。否则,暴发户会认为这个过程已经死亡,并会再次尝试启动它,这可能会搞砸了。
  2. 您的redis.conf存在问题,或者您没有使用您认为的redis.conf文件执行Redis。检查你的redis.conf并确保你通过绑定到IP和端口正确启用了TCP连接,或者你已经启用了unix套接字。
  3. 您已将Redis配置为侦听非标准端口或通过unix套接字,并且redis-cli未传递正确的端口或套接字。或者,您正在使用套接字,而您正在运行的用户redis-cli没有读取/写入套接字的权限。
  4. 以下是我在开发环境中使用的正常运行的upstart脚本,我将其放在/etc/init/redis.conf中:https://gist.github.com/1297014

    以下是Redis配置文件,我通常将其存储在/opt/redis/redis.conf以及redis可执行文件中(尽管将文件存储在/etc/redis.conf可能更标准):https://gist.github.com/1368914

    除了一些小改动之外,我的开发环境使用了redis.conf库存。我支持使用upstart管理redis的唯一变化是设置daemonize no