本文共 906 字,大约阅读时间需要 3 分钟。
一、通过命令删除
删除当前数据库中的所有key>flushdb
删除所有数据库的所有key
>flushall
二、通过shell来删除
redis-cli keys "*" | while read LINE ; do TTL=`redis-cli ttl $LINE`; if [ $TTL -eq -1 ]; then echo "Del $LINE"; RES=`redis-cli del $LINE`; fi; done;
删除 3600秒之后过期的
redis-cli keys "*" | while read LINE ; do TTL=`redis-cli ttl $LINE`; if [ $TTL -ge 3600 ]; then echo "Del $LINE"; RES=`redis-cli del $LINE`; fi; done;
删除某些前缀的
redis-cli KEYS "liyg.com*" | xargs redis-cli DEL
注:若有密码验证需添加-a 非6379端口需指定-p
redis-cli -p 7002 -a qwer1234 keys "*" | while read LINE ; do TTL=`redis-cli -p 7002 -a qwer1234 ttl $LINE`; if [ $TTL -eq -1 ]; then echo "Del $LINE"; RES=`redis-cli -p 7002 -a qwer1234 del $LINE`; fi; done;
三、使用lua脚本
删除所有key
>EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 *
删除某些key
>EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 liyg.com*
转载于:https://blog.51cto.com/12244079/2326342