Redis 无报错瞬间崩溃

run*_*red 5 redis

我的虚拟机上安装了 redis,但我已经有一段时间没有使用它了。(上次我使用它,它确实有效,但现在不起作用......那段时间(大约一个月)没有任何变化)。不用说我很困惑,但我会发布尽可能多的信息。

$ redis-server

服务器启动,但抛出有关过度使用内存设置为 0 的警告。我在虚拟机上,因此如果我愿意,我无法将此设置从 0 更改为 1,但出于我的目的,我无论如何也不想这样做。不过,我已经编写了一个自定义redis.config文件,我希望它使用该文件(并且我过去使用过该文件),因此使用默认配置文件启动它对我没有多大好处。让我们再试一次。

$ redis-server redis.config
$
Run Code Online (Sandbox Code Playgroud)

没有什么。安静。没有错误信息,只是没有启动。

$ nohup redis-server redis.config > nohup.out&

我得到了一个进程 ID,但随后$ ps我看到该进程被列为stop并很快消失。同样,没有错误,nohup.out 和 redis 日志文件中都没有输出。下面是我正在使用的 redis.config (没有注释以使其简短)

daemonize yes
pidfile [my-user-account-path]/redis/redis.pid
port 0
bind 127.0.0.1
unixsocket [my-user-account-path]/tmp/redis.sock
unixsocketperm 770
timeout 10
tcp-keepalive 60
loglevel warning
logfile [my-user-account-path]/redis/logs/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error no
rdbcompression no
rdbchecksum no
dbfilename dump.rdb
dir [my-user-account-path]/redis/db
slave-serve-stale-data yes
slave-priority 100
appendonly no
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128

# ADVANCED CONFIG is set to all default settings#
Run Code Online (Sandbox Code Playgroud)

我确信这可能是一些愚蠢的事情,甚至可能是某个地方的权限问题(我已经尝试以 root 身份执行此操作,仅供参考),但无济于事。有人在使用 Redis 时遇到过类似的事情吗?

Hut*_*tch 1

我也遇到过redis崩溃的情况。仅供参考 - 负责 Redis 大部分开发的人 Salvatore Sanfilippo(又名 antirez)保留了一个有趣的博客,其中对 Redis 崩溃有一些见解:

http://antirez.com/news/43