redis关键字删除_Redis批量删除key的小技巧
一、使用keys+xargs實現
開始實戰
1.連接redis,初始數據./redis-cli?-h?127.0.0.1?-p?6379127.0.0.1:6379>?set?java_suisui_1?1OK127.0.0.1:6379>?set?java_suisui_2?2OK127.0.0.1:6379>?set?java_suisui_3?3OK127.0.0.1:6379>?set?java_suisui_4?4OK
2.使用keys命令查看數據127.0.0.1:6379>?keys?java_suisui_*1)?"java_suisui_1"2)?"java_suisui_2"3)?"java_suisui_3"4)?"java_suisui_4"
3.退出redis的客戶端127.0.0.1:6379>?exit
4.使用keys+xargs批量刪除[root@node1?src]#?./redis-cli?-h?127.0.0.1?-p?6379?keys?"java_suisui*"?|?xargs?./redis-cli?-h?127.0.0.1?-p?6379?del(integer)?4
執行上述命令后4條記錄全部刪除。
5.注意事項
redis是單線程架構,如果redis包含了大量的鍵,執行keys命令可能會造成redis阻塞,所以一般建議不要在生產環境下使用keys命令。如果非要遍歷鍵刪除的話,可以在以下三種情況使用:(1).在一個不對外提供服務的Redis從節點上執行,這樣不會阻塞到客戶端的請求,但是會影響到主從復制。(2).如果確認鍵值總數確實比較少,可以執行該命令。(3).使用scan命令漸進式的遍歷所有鍵,可以有效防止阻塞。
二、使用scan+xargs實現
開始實戰,前三個步驟和上面一樣,不再重復記錄。
1.使用scan+xargs批量刪除[root@node1?src]#?./redis-cli?-h?127.0.0.1?-p?6379?--scan?--pattern?'java*'?|?xargs?./redis-cli?-h?127.0.0.1?-p?6379?del(integer)?4
執行上述命令后4條記錄全部刪除。
三、xargs命令介紹
xargs 可以將管道或標準輸入(stdin)數據轉換成命令行參數,也能夠從文件的輸出中讀取數據。xargs 是一個強有力的命令,它能夠捕獲一個命令的輸出,然后傳遞給另外一個命令。./redis-cli?-h?127.0.0.1?-p?6379?keys?"java_suisui*"?|?xargs?./redis-cli?-h?127.0.0.1?-p?6379?del
上述命令解釋:就是用keys java_suisui*查詢出所有匹配的key,通過xargs命令,將前面查詢出來的key作為后面redis的del命令的輸入,這樣就可以實現redis批量刪除鍵了。
總結
以上是生活随笔為你收集整理的redis关键字删除_Redis批量删除key的小技巧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python手机app 授权登录_App
- 下一篇: 分布式锁和mysql事物扣库存_这个是真