場景
Windows中的Redis存儲的某命名空間下的Redis的鍵值對,都是以指定前綴開頭的,比如


比如這里想要將mine:這個前綴開頭的都刪除掉。
除了使用Redis的可視化工具連接到Redis服務端找到這個命令空間,然后整個刪除掉。
如果此時這個命名空間下數據量已經非常大,比如800萬條數據,直接使用Redis的可視化工具已經沒法
打開,甚至加載不出來刪除的按鈕。可以通過redis的客戶端執行命令進行刪除掉。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
新建一個文本文檔,內容如下
@echo off set keysfile=redis-cached-keys.txt redis-cli -n 0 -a 123456 keys "mine:*" > %keysfile% FOR /F %%i in (%keysfile%) DO (redis-cli -n 0 -a 123456 del %%i) DEL /F /Q %keysfile% pause
注意這里的
-n 代表要操作的數據為0號數據, -a 代表是連接密碼
然后將此文件的后綴名改為bat,並將其復制到Redis的解壓目錄下,即redis.cli所在的目錄下

然后這個bat命令是使用redis-cli連接到redis的server端,然后先在本地新建一個文本文件,
再讀取以mine:開頭的key然后,將結果保存到文件中,再進行循環執行刪除每個建,
然后將文件刪除。
實現效果


