Redis的基础命令

Redis基础命令

1.获得符合规则的键名列表

keys pattern

pattern支持glob风格通配符格式,规则如下:

  • ?                    匹配一个字符
  •  *                     匹配任意个(包括0个)字符
  • [ ]                    匹配括号间的任一字符,可以使用“-”符号表示一个范围,如a[b-d]可以匹配"ab","ac","ad"
  • \x                    匹配字符x,用于转义符号。如要匹配?,使用\?  

    keys * 获取Redis所有的键。

    Redis不区分命令大小写

2.判断一个键是否存在

exists key[key ...]

如果键存在则返回1,否则返回0。

3.删除键

del key[key ...]

可以删除一个或多个键,返回值是删除的键的个数。

    del命令的参数不支持通配符,但我们可以结合linux的管道和xargs命令自己实现删除所有符合规则的键。比如要删除所有以user:开头的键,就可以执行redis-cli keys "user:*" | xargs redis-cli del。另外由于del命令支持多个键作为参数,所以还可以执行redis-cli del 'redis-cli keys "user:*"'来达到同样的效果,但是性能更好。

4.获取键值的数据类型

type key

返回值如下:

  • string                字符串类型
  • hash                 散列类型
  • list                    列表类型
  • set                    集合类型
  • zset                  有序集合类型
### Redis 基础命令概述 Redis 是一种高性能的键值存储系统,其提供了丰富的基础命令来实现各种功能。这些命令可以根据它们的操作目标分类为三大部分:对 Redis 进行基本操作的命令、针对 Key 的操作以及针对 Value 的操作[^1]。 以下是 Redis 中一些常见的基础命令及其用法: --- #### 1. **连接与管理命令** 这类命令主要用于管理和维护 Redis 客户端与服务器之间的会话。 - `PING` 测试客户端到服务器的连通性。如果成功返回字符串 `"PONG"` 表明连接正常[^3]。 - `QUIT` 关闭当前客户端与 Redis 服务的连接。 - `AUTH password` 如果启用了密码验证,则通过此命令提供正确的密码以访问 Redis 数据库。 - `SELECT index` 切换至指定编号的数据库实例,默认情况下有 16 个独立的数据库可供切换。 --- #### 2. **Key 操作命令** 这部分命令用于处理键的存在状态、过期时间以及其他属性。 - `DEL key` 删除给定的一个或多个键。如果键不存在则忽略该操作。 - `EXISTS key` 验证某个键是否存在;存在时返回 `(integer) 1`,否则返回 `(integer) 0`。 - `TTL key` 获取键剩余的有效生存时间(单位秒)。对于未设置超时或者永久有效的键,分别返回 `-1` 和 `-2`。 - `TYPE key` 返回键关联的数据类型的名称,比如 string, list, set 等等。 - `KEYS pattern` 查找所有符合特定模式的键名集合。注意,在生产环境中应谨慎使用以免影响性能。 --- #### 3. **Value 类型相关命令** 每种数据结构都有对应的专用指令集支持复杂查询和更新逻辑。 ##### (a). String 字符串类型 这是最简单的数据形式之一,允许保存固定长度字节序列作为值。 - `SET key value` 将指定键设为对应的新值并覆盖原有内容。 - `GET key` 取回由某键映射的具体数值。 - `INCR key` / `DECR key` 对整数性质的字段实施原子加减运算。 ##### (b). List 列表类型 表示双向链表容器,适合用来模拟队列/栈行为。 - 添加元素: ```bash LPUSH mylist "first" RPUSH mylist "last" ``` - 移除首尾项: ```bash LPOP mylist RPOP mylist ``` 更多高级特性可通过查阅官方文档获取更多信息[^2]。 ##### (c). Hashes 散列表 类似于 Python 字典的对象模型,内部包含若干键值配对关系。 - 存储子域: ```bash HSET user:1000 username "Alice" ``` - 提取单条记录: ```bash HGET user:1000 username ``` ##### (d). Sets & Sorted Sets 集合&有序集合 无序唯一成员构成的标准数学概念延伸版本。 - 插入节点: ```bash SADD fruits apple banana orange ZADD scores 85 alice 92 bob ``` - 查询交差补结果: ```bash SUNION first second third SDIFF groupA groupB ``` 以上仅列举了一部分核心语法要点[^4]。 --- ### 示例代码展示如何批量删除匹配条件下的 keys ```python import redis r = redis.Redis(host='localhost', port=6379) pattern = 'log_*' keys_to_delete = r.keys(pattern) if keys_to_delete: deleted_count = r.delete(*keys_to_delete) print(f"{deleted_count} items were removed.") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值