redis在xshell/SecureCRT上批量模糊刪除緩存的key

        前幾天有一個需求,有一個槽的緩存多餘了,需要刪除掉,但是這個槽裏還有很多其他的緩存。這裏我們就需要用到redis的模糊匹配key的方法批量刪除這一批key了。特意記錄下。

        Redis 中有刪除單個 Key 的指令 DEL,但好像沒有批量刪除 Key 的指令,不過我們可以藉助 Linux 的 命令來完成這個動作。

首先通過linux連接redis,然後進去該redis的src(redis-cli的上級目錄)目錄(我的路徑可供參考:cd redis-3.0.7/src),然後在這個路徑下打出這行命令: 這裏分兩種情況

1   -      redis爲默認端口號6379,無連接密碼,刪除命令如下:

 [root@xxxserver1 src]#  ./redis-cli keys "key*" | xargs redis-cli DEL

注意:我操作的時候,這裏redis-cli前面的路徑一開始用的也是 ./ ,但是一直是失敗的,不知道是由於版本的關係還是爲什麼。我寫的是完整的絕對路徑 命令如下:  [root@xxxserver1 src]#  /root/redis/redis-3.0.7/src/redis-cli keys "key*" | xargs redis-cli del

2   -      另外還有一種情況,有連接密碼(-a後面的內容),端口號有變化(不是6379,-p後面的內容),需要指定具體的卡槽的(-n後面的內容),則刪除命令如下:

 [root@xxxserver1 src]#  /root/redis/redis-3.0.7/src/redis-cli -a possword -p 6379 -n 12 KEYS "key*" | xargs /root/redis/redis-3.0.7/src/redis-cli -a possword -p 6379 -n 12 DEL

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章