我们这篇看一看遍历键和数据库管理
1 遍历键
1.1 全量遍历键
有时候我们需要全量遍历所有的键,那么就需要用到keys pattern
这个命令,并且这个命令支持pattern匹配
127.0.0.1:6379> mset name luke neme josh
OK
复制代码
若是想要遍历所有的键则可以使用命令keys *
127.0.0.1:6379> keys *
1) "name"
2) "neme"
复制代码
pattern使用的是glob风格的通配符,其中:
- * 代表任意字符
- ?代表一个字符
- [] 代表匹配部分字符,例如[a,b]表示匹配a,b两个字符,[1-10]表示匹配1到10的任意数字
- \x 表示转义,当需要匹配*这个字符的时候,就需要转义
我们可以做如下操作:
127.0.0.1:6379> keys n[a,e]me
1) "name"
2) "neme"
复制代码
也可以这样操作
127.0.0.1:6379> keys n?me
1) "name"
2) "neme"
复制代码
但是当redis数据库中有大量的键的时候,keys会阻塞redis。
若是我们有需求需要遍历键那么该怎么办呢?
一般我们生产环境是多节点的,那么我们可以找一个不对外提供服务的redis从节点进行遍历数据</