1、說明
專業(yè)領(lǐng)域包括成都做網(wǎng)站、網(wǎng)站制作、商城網(wǎng)站定制開發(fā)、微信營銷、系統(tǒng)平臺(tái)開發(fā), 與其他網(wǎng)站設(shè)計(jì)及系統(tǒng)開發(fā)公司不同,創(chuàng)新互聯(lián)的整合解決方案結(jié)合了幫做網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗(yàn)和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,為客戶提供全網(wǎng)互聯(lián)網(wǎng)整合方案。
redis集群上有時(shí)候會(huì)需要?jiǎng)h除多個(gè)key,就必須需要登錄到每個(gè)節(jié)點(diǎn)上,而且有可能這個(gè)key不在這個(gè)節(jié)點(diǎn),這樣刪除起來就比較麻煩,下面提供一種便捷方式可以實(shí)現(xiàn)
2、查看redis集群中的master節(jié)點(diǎn)
首先你要確認(rèn)有哪幾臺(tái)master節(jié)點(diǎn),可以用下面命令查看:
#./redis-cli cluster nodes | grep master |
PS:在這里我有3臺(tái)master主節(jié)點(diǎn),端口都是6379
3、編寫redis_del.sh腳本
#!/bin/bash redis_comm=/usr/local/redis/bin/redis-cli redis_ser01=172.18.18.107 redis_ser02=172.18.18.108 redis_ser03=172.18.18.109 $redis_comm -c -h $redis_ser01 keys $1 | xargs -i ./redis-cli -h $redis_ser01 del {} $redis_comm -c -h $redis_ser02 keys $1 | xargs -i ./redis-cli -h $redis_ser02 del {} $redis_comm -c -h $redis_ser03 keys $1 | xargs -i ./redis-cli -h $redis_ser03 del {} |
參數(shù)說明:
-c:啟動(dòng)集群模式進(jìn)入redis集群服務(wù)
-h:redis主機(jī)地址
xargs -i: -i 選項(xiàng)告訴 xargs 可以使用{}代替?zhèn)鬟f過來的參數(shù)
4、使用redis_del.sh腳本
比如,我們現(xiàn)在有個(gè)需求,要?jiǎng)h除redis集群以UP開頭所有的key。
首先,我們先登錄redis集群,查看一下:
然后,使用redis_del.sh腳本刪除:
# ./redis_del.sh UP* |
PS:如上圖所示,UP開頭的所有key都刪除了
腳本用法:sh redis_del.sh key參數(shù)
例如,你要?jiǎng)h除其它key值:
./redis_del.sh a* #刪除以a開頭的key值
./redis_del.sh b* #刪除以b開頭的key值
或者,刪除以什么結(jié)尾的keys值:
./redis_del.sh *ab #刪除以ab結(jié)尾的key值
./redis_del.sh *123 #刪除以123結(jié)尾的key值
......等等
好了,覺得有用的朋友可以轉(zhuǎn)發(fā)或者收藏,大家有問題可以在下面留言一起探討,有更好的建議也可以在評(píng)論區(qū)貼出來?。?!