redis批量删除key
生活随笔
收集整理的這篇文章主要介紹了
redis批量删除key
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
批量刪除Key
Redis 中有刪除單個 Key 的指令 DEL,但好像沒有批量刪除 Key 的指令,不過我們可以借助 Linux 的 xargs 指令來完成這個動作
| 1 2 3 | redis-cli keys "test*" | xargs redis-cli del //如果redis-cli沒有設置成系統變量,需要指定redis-cli的完整路徑 //如:/opt/redis/redis-cli keys "*" | xargs /opt/redis/redis-cli del |
如果要指定 Redis 數據庫訪問密碼,使用下面的命令
| 1 | redis-cli -a password keys "*" | xargs redis-cli -a password del |
如果要訪問 Redis 中特定的數據庫,使用下面的命令
| 1 2 | //下面的命令指定數據序號為0,即默認數據庫 redis-cli -n 0 keys "*" | xargs redis-cli -n 0 del |
刪除所有Key
刪除所有Key,可以使用Redis的flushdb和flushall命令
| 1 2 3 4 | //刪除當前數據庫中的所有Key flushdb //刪除所有數據庫中的key flushall |
注:keys 指令可以進行模糊匹配,但如果 Key 含空格,就匹配不到了,暫時還沒發現好的解決辦法。
?
在數據量大的時候,可以先導出再刪除
| redis-cli -p 6380 -a redis-pwd keys "preffix-1*" > /home/keys_redis/preffix-1 |
然后通過這些數據刪掉生產環境上的key。
| 1 | cat /home/keys_redis/preffix-1 | xargs redis-cli -a redis-pwd -n 0 del |
刪除的速度非常快
?
the_day_before_yesterday=`date -d "2 days ago" '+%Y%m%d'` var_keys="RealTimelog*"${the_day_before_yesterday}"*" echo $var_keys redis-cli -a 1234 keys $var_keys | xargs redis-cli -a 1234 del?
轉載于:https://www.cnblogs.com/linn/p/4626467.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的redis批量删除key的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 24个很赞的 Node.js 免费教程和
- 下一篇: java、上转型对象