這幾天客戶一直給我反映一個(gè)問(wèn)題,那就是他的緩存服務(wù)器redis每天會(huì)清理庫(kù),很納悶,我配置的redis一般保持的默認(rèn),不應(yīng)該會(huì)每天去清理庫(kù)的,感覺(jué)應(yīng)該還是他的程序上有點(diǎn)問(wèn)題吧。
不過(guò),不管程序問(wèn)題還是配置問(wèn)題,我想到就是可以吧清庫(kù)的命令禁掉,這樣即使他程序要去清理也是沒(méi)辦法的,于是就百度了一下,看到所有相關(guān)的文檔都是一個(gè)人寫(xiě)的,就是在redis.conf中使用rename-conmand
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command KEYS ""
完了,之后我就去重啟redis,以為OK了,仔細(xì)看了redis的日志,發(fā)現(xiàn)有問(wèn)題。
Unknown command ‘flushall‘ reading the append only file
這是啥問(wèn)題,直接百度,根本沒(méi)有這個(gè)問(wèn)題的解答,仔細(xì)看append only這個(gè),感覺(jué)在哪見(jiàn)過(guò),于是到redis.conf文件中找,果然在里面,又到官網(wǎng)看了這個(gè)參數(shù)的意思。
############################## APPEND ONLY MODE ###############################
# 默認(rèn)情況下,Redis是異步的把數(shù)據(jù)導(dǎo)出到磁盤上。這種模式在很多應(yīng)用里已經(jīng)足夠好,但Redis進(jìn)程
# 出問(wèn)題或斷電時(shí)可能造成一段時(shí)間的寫(xiě)操作丟失(這取決于配置的save指令)。
#
# AOF是一種提供了更可靠的替代持久化模式,例如使用默認(rèn)的數(shù)據(jù)寫(xiě)入文件策略(參見(jiàn)后面的配置)
# 在遇到像服務(wù)器斷電或單寫(xiě)情況下Redis自身進(jìn)程出問(wèn)題但操作系統(tǒng)仍正常運(yùn)行等突發(fā)事件時(shí),Redis
# 能只丟失1秒的寫(xiě)操作。
#
# AOF和RDB持久化能同時(shí)啟動(dòng)并且不會(huì)有問(wèn)題。
# 如果AOF開(kāi)啟,那么在啟動(dòng)時(shí)Redis將加載AOF文件,它更能保證數(shù)據(jù)的可靠性。
#
# 請(qǐng)查看 http://redis.io/topics/persistence 來(lái)獲取更多信息.
appendonly no
# 純累加文件名字(默認(rèn):"appendonly.aof")
appendfilename "appendonly.aof"
于是,就抱著碰運(yùn)氣的想法,把配置改了appendonly yes改為no,重啟redis,果然夠沒(méi)有任何報(bào)錯(cuò),而且,那三個(gè)命令也被禁用了。
以上這篇redis禁止幾個(gè)危險(xiǎn)命令的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 利用yum安裝Redis的方法詳解
- Redis中scan命令的深入講解
- Redis不使用 keys 命令獲取鍵值信息的方法
- Redis學(xué)習(xí)教程之命令的執(zhí)行過(guò)程詳解
- 詳解centos7 yum安裝redis及常用命令