2014-08-28 49 views
2

我用FLUSHALL命令刪除我的redis緩存。來自doc:redis掛在flushall命令上

刪除所有現有數據庫的所有密鑰,而不僅僅是當前選擇的數據庫的 。這個命令永遠不會失敗

但它掛在我巨大的redis實例(在我的情況下約20GB),並且我終止了redis服務器,清除了redis備份目錄並啓動了redis服務器。一切似乎都不錯,但是這樣做的好方法嗎?爲什麼flushall掛起?

回答

2

它掛起,因爲它必須刪除數百萬個項目。這需要一段時間,因爲它必須掃描一切。您也可能會將部分數據換出。

您可能需要檢查flushall運行時機器是否不交換。

2

我遇到了同樣的問題,我的64G內存的Xeon沒有響應兩個小時左右。 最後,我使用

kill -9 redisPID 
rm dump.rdb 
service redis restart 

工作就像一個魅力))