前言
由於redis持久化(RDB),導致我們的線上的磁盤被寫炸
線上服務器是 64H 512G
大概寫了rdb文件是 200G
左右,寫滿了當時的目錄
處理策略
- 關閉持久化,由於之前的現象表示,我們線上的redis並不會意外宕機,另外我們定時重啟(每星期會上線一下應用,重啟一下)
-
所以臨時方案是 暫時關閉持久化, 每次重啟前,手動執行
bgsave
命令- 問題來了: rdb關閉后,我們重啟redis,是否會加載
dump.rdb
文件呢 - 進行了實驗, 驗證
即使是關閉了rdb持久化策略,redis重啟仍然會加載rdb文件
- 批量生成redis命令
seq 1 10000 | awk '{ print "set "$1" "$1}' > cmd.txt
- 執行redis命令
cat cmd.txt | redis-cli -h ip -p port --pipe
- redis-cli執行生成rdb
bgsave
- 重啟redis, 查看redis的log是加載了rdb文件的
- 批量生成redis命令
- 問題來了: rdb關閉后,我們重啟redis,是否會加載
-
redis 線上不重啟,關閉
rdb
- redis-cli執行
config set save ""
- redis-cli執行
-