redis 查询与删除key命令
时间: 2023-10-25 10:04:35 浏览: 51
Redis 查询和删除 key 的命令如下:
1. 查询 key 的命令:
- EXISTS key:判断 key 是否存在,存在返回 1,不存在返回 0。
- TYPE key:返回 key 存储的值的类型。常见的值类型有 string、hash、list、set、sorted set 等。
- TTL key:返回 key 的过期时间,以秒为单位。如果 key 没有设置过期时间或者已经过期,则返回 -2。如果 key 存在并且没有设置过期时间,则返回 -1。
- PTTL key:返回 key 的过期时间,以毫秒为单位。
2. 删除 key 的命令:
- DEL key [key ...]:删除一个或多个 key。
- UNLINK key [key ...]:异步删除一个或多个 key。相比 DEL 命令,UNLINK 命令不会阻塞服务器,因为它会在后台异步地删除 key。
- FLUSHDB:删除当前数据库中的所有 key。
- FLUSHALL:删除所有数据库中的所有 key。
相关问题
redis 控制台 模糊删除key命令
在 Redis 控制台中,可以使用 `keys` 命令来查找符合指定模式的键,然后再使用 `del` 命令删除这些键。例如,要删除所有以 "example" 开头的键,可以使用以下命令:
```
del $(keys example*)
```
这将使用 `keys` 命令查找所有以 "example" 开头的键,然后使用 `del` 命令删除它们。需要注意的是,`keys` 命令可能会影响Redis性能,因此应谨慎使用。另外,删除键时请务必谨慎,确保您要删除的键确实是无用的。
redis批量删除key命令
以下是两种redis批量删除key的方法:
1.使用redis-cli KEYS和xargs命令:
```shell
redis-cli KEYS "pattern" | xargs redis-cli DEL
```
其中,pattern是你要删除的key的通配符模式,例如exam:*表示删除所有以exam:开头的key。
但是,这种方法存在两个问题:一是redis-cli KEYS "pattern"的结果会出现编号,不是纯粹的key;二是如果key数量过多,可能会导致redis-cli DEL命令执行失败。
2.使用redis-cli和shell脚本:
```shell
#!/bin/bash
redis-cli -h host -p port -a password keys "pattern" | while read LINE
do
redis-cli -h host -p port -a password del "$LINE"
done
```
其中,host是redis服务器的IP地址,port是redis服务器的端口号,password是redis服务器的密码,pattern是你要删除的key的通配符模式,例如exam:*表示删除所有以exam:开头的key。
这种方法通过shell脚本逐个删除key,可以避免上述两个问题。