配置redis禁用几个危险命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置redis禁用几个危险命令相关的知识,希望对你有一定的参考价值。

  这几天客户一直给我反映一个问题,那就是他的缓存服务器redis每天会清理库,很纳闷,我配置的redis一般保持的默认,不应该会每天去清理库的,感觉应该还是他的程序上有点问题吧。

  不过,不管程序问题还是配置问题,我想到就是可以吧清库的命令禁掉,这样即使他程序要去清理也是没办法的,于是就百度了一下,看到所有相关的文档都是一个人写的,就是在redis.conf中使用rename-conmand

         rename-command FLUSHALL ""
       rename-command FLUSHDB ""
       rename-command KEYS ""

完了,之后我就去重启redis,以为OK了,仔细看了redis的日志,发现有问题。

 Unknown command ‘flushall‘ reading the append only file

这是啥问题,直接百度,根本没有这个问题的解答,仔细看append only这个,感觉在哪见过,于是到redis.conf文件中找,果然在里面,又到官网看了这个参数的意思。

############################## APPEND ONLY MODE ###############################
 
# 默认情况下,Redis是异步的把数据导出到磁盘上。这种模式在很多应用里已经足够好,但Redis进程
# 出问题或断电时可能造成一段时间的写操作丢失(这取决于配置的save指令)。
#
# AOF是一种提供了更可靠的替代持久化模式,例如使用默认的数据写入文件策略(参见后面的配置)
# 在遇到像服务器断电或单写情况下Redis自身进程出问题但操作系统仍正常运行等突发事件时,Redis
# 能只丢失1秒的写操作。
#
# AOF和RDB持久化能同时启动并且不会有问题。
# 如果AOF开启,那么在启动时Redis将加载AOF文件,它更能保证数据的可靠性。
#
# 请查看 http://redis.io/topics/persistence 来获取更多信息.
 
appendonly no
 
# 纯累加文件名字(默认:"appendonly.aof")
 
appendfilename "appendonly.aof"

 于是,就抱着碰运气的想法,把配置改了appendonly yes改为no,重启redis,果然够没有任何报错,而且,那三个命令也被禁用了。


本文出自 “运维空间” 博客,请务必保留此出处http://drinkboy.blog.51cto.com/10606290/1757897

以上是关于配置redis禁用几个危险命令的主要内容,如果未能解决你的问题,请参考以下文章

arx代码片段

一些需要禁用的PHP危险函数(disable_functions)

一些需要禁用的PHP危险函数(disable_functions)

StackExchange.Redis 配置

redis中使用SCAN代替KEYS

宝塔面板 – NGINXPHP版本号隐藏/危险函数的禁用