溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

redis批量刪除某種規(guī)則中和key的方法

發(fā)布時(shí)間:2021-03-11 10:27:45 來(lái)源:億速云 閱讀:760 作者:小新 欄目:關(guān)系型數(shù)據(jù)庫(kù)

這篇文章主要介紹redis批量刪除某種規(guī)則中和key的方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

一、前言

在工作中經(jīng)常遇到需要批量刪除某種規(guī)則的key的情況,如緩存的課程數(shù)據(jù)“course-課程uid”,課程uid是變量,我們需要?jiǎng)h除類(lèi)似于“course-*”這樣的數(shù)據(jù)。但是,redis雖然有提供批量查詢(xún)這一類(lèi)key的命令keys,卻并沒(méi)有提供批量刪除某種類(lèi)型key的命令。

二、解決方案

先看看我們?cè)趺唇鉀Q。

1、先進(jìn)入redis的客戶(hù)端

cd redis所在目錄/src
./redis-cli

2、初始化數(shù)據(jù),模擬數(shù)據(jù)

127.0.0.1:6379> set course-1 1
OK
127.0.0.1:6379> set course-2 2
OK
127.0.0.1:6379> set course-3 3
OK

3、通過(guò)keys命令可以看到,現(xiàn)在有上面的三個(gè)key

127.0.0.1:6379> keys  course-*
1) "course-3"
2) "course-2"
3) "course-1"

4、退出redis的客戶(hù)端

127.0.0.1:6379> exit

5.1、本地批量刪除key

./redis-cli keys "course-*" | xargs ./redis-cli del

此處剛剛 course-*  相關(guān)的3個(gè)key已經(jīng)被刪除了

原理解析:

先通過(guò)redis客戶(hù)端執(zhí)行了keys命令,模糊搜索出所有的key,通過(guò)xargs命令,將前面查詢(xún)出來(lái)的key作為后面redis的del命令的輸入

最終執(zhí)行的結(jié)果可以理解成

(學(xué)習(xí)視頻分享:redis視頻教程)

1、模糊查詢(xún)

keys "course-*"

查詢(xún)出上面的course-1 course-2 course-3 這三個(gè)key

2、執(zhí)行刪除key

del的三個(gè)key來(lái)自前面的keys查詢(xún)

del course-1 course-2  course-3

5.2、遠(yuǎn)程批量刪除key

經(jīng)常我們開(kāi)發(fā)的時(shí)候,redis都是公用的,可能redis不在本地我們可以通過(guò)redis客戶(hù)端遠(yuǎn)程進(jìn)行刪除

./redis-cli -h redis所在服務(wù)器ip -p 端口 keys "course-*" |xargs ./redis-cli -h redis所在服務(wù)器ip -p 端口 del

三、補(bǔ)充知識(shí)

1、遠(yuǎn)程某臺(tái)機(jī)子的redis

以下實(shí)例演示了如何連接到主機(jī)為 127.0.0.1,端口為 6379 ,密碼為 mypass 的 redis 服務(wù)上。

redis-cli -h 127.0.0.1 -p 6379 -a "mypass"

2、xargs命令

xargs命令是給其他命令傳遞參數(shù)的一個(gè)過(guò)濾器,也是組合多個(gè)命令的一個(gè)工具。 

以上是“redis批量刪除某種規(guī)則中和key的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI