我的虛擬機上安裝了redis,我一段時間都沒有使用它。 (最後我使用它,它確實工作,現在它沒有......當時沒有任何變化(大約一個月))。不用說,我很困惑,但我會盡可能多地發佈信息。Redis無故障立即崩潰
$ redis-server
服務器啓動,但會拋出一個關於內存過警告被設置爲0。我在一個虛擬機,所以如果我想我不能從0將此設置更改爲1,這我不會無論如何,我不想爲了我的目的。我已經寫了一個自定義的redis.config
文件,我希望它使用(以及我過去使用的),因此,使用默認配置文件啓動它並不會對我有很大幫助。讓我們再試一次。
$ redis-server redis.config
$
什麼都沒有。安靜。沒有錯誤信息,只是沒有開始。
$ nohup redis-server redis.config > nohup.out&
我得到一個進程ID,但隨後$ ps
和我看到的過程被列爲stop
轉眼間消失。同樣,nohup.out中也沒有錯誤,也沒有在redis的日誌文件中輸出。下面是我使用(沒有評論保持短)
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#
我敢肯定,這可能是一些愚蠢的,甚至可能是一個權限的事情某處redis.config(我試過執行此爲根,fyi),無濟於事。有人經歷過與Redis類似的事情嗎?
確保不會了pidfile不** * *在啓動redis之前存在,儘管這應該會在日誌中給出提示。 – adrianp 2013-04-11 19:37:37
pidfile確實存在,但仍然發生同樣的事情。 (它確實創建了一個新的pid文件) – runspired 2013-04-11 19:40:43
在pid文件不存在的情況下,redis日誌現在顯示: '[23272] 11 Apr 12:40:55.860#無法將最大文件數限制爲10032允許),設置最大客戶端配置爲3984. [23272] 11月12日:40:55.861#服務器啓動,Redis版本2.6.10 [23272] 11 Apr 12:40:55.861#警告overcommit_memory設置爲0!後臺保存可能在內存不足的情況下失敗。要解決此問題,請在/etc/sysctl.conf中添加'vm.overcommit_memory = 1',然後重新啓動或運行命令'sysctl vm.overcommit_memory = 1'以使其生效。' – runspired 2013-04-11 19:41:58