Wrayの知识库 Wrayの知识库
首页
  • Java 基础
  • Java 集合
  • Java 并发
  • Java IO
  • JVM
  • Spring Framework
  • Spring Boot
  • Spring Cloud
  • Spring Security
  • MySQL
  • Redis
  • MacOS
  • Linux
  • Windows
  • 纸质书
  • 电子书
  • 学习课程
疑难杂症
GitHub (opens new window)
首页
  • Java 基础
  • Java 集合
  • Java 并发
  • Java IO
  • JVM
  • Spring Framework
  • Spring Boot
  • Spring Cloud
  • Spring Security
  • MySQL
  • Redis
  • MacOS
  • Linux
  • Windows
  • 纸质书
  • 电子书
  • 学习课程
疑难杂症
GitHub (opens new window)
  • MySQL

    • MySQL概述
    • MySQL基础架构
    • MySQL存储引擎
    • MySQL事务
    • MySQL索引
    • MySQL B+索引
    • MySQL锁
    • MySQL日志
  • Redis

    • Redis概述
    • Redis版本
    • Redis相较于其他NoSQL数据库
    • Redis数据类型
    • Redis命令
      • 1. 通用键管理命令
      • 2. 字符串操作命令
      • 3. 列表操作命令
      • 4. 集合操作命令
      • 5. 有序集合操作命令
      • 6. 哈希操作命令
      • 7. 发布订阅(Pub/Sub)命令
      • 8. 事务命令
      • 总结
    • Redis持久化机制
    • Redis缓存管理
    • Redis事务
    • Redis分布式锁
  • 数据库
  • Redis
Wray
2024-11-01
目录

Redis命令

Redis 提供了丰富的命令集,以便开发人员灵活地操作数据。根据数据类型和应用场景,这些命令可以分为几大类,包括键管理、字符串操作、列表操作、集合操作、有序集合操作、哈希操作等。

# 1. 通用键管理命令

Redis 中的键是数据的唯一标识符,键管理命令用于管理这些键。

  • DEL key [key ...]:删除指定的键及其关联的数据。
  • EXISTS key:检查键是否存在,存在返回 1,否则返回 0。
  • EXPIRE key seconds:设置键的过期时间,以秒为单位。
  • TTL key:获取键的剩余存活时间,单位为秒。
  • TYPE key:返回键对应的数据类型。

示例命令:

SET mykey "value"
EXPIRE mykey 10
TTL mykey
DEL mykey

# 2. 字符串操作命令

字符串是 Redis 中最基本的数据类型,字符串操作命令用于操作字符串类型的键。

  • SET key value [EX seconds] [PX milliseconds]:设置键的值,支持设置过期时间。
  • GET key:获取键的值。
  • INCR key:将键的值加 1,适用于存储数值的数据。
  • DECR key:将键的值减 1。
  • APPEND key value:将给定值追加到原有值的末尾。

示例命令:

SET counter 100
INCR counter
GET counter
APPEND greeting "Hello, "
APPEND greeting "Redis!"
GET greeting

# 3. 列表操作命令

列表是有序的字符串集合,Redis 提供了多种操作命令来管理列表。

  • LPUSH key value [value ...]:将一个或多个值插入列表的头部。
  • RPUSH key value [value ...]:将一个或多个值插入列表的尾部。
  • LPOP key:移除并返回列表的头元素。
  • RPOP key:移除并返回列表的尾元素。
  • LRANGE key start stop:获取指定范围内的列表元素。

示例命令:

LPUSH mylist "one"
RPUSH mylist "two"
LRANGE mylist 0 -1
LPOP mylist

# 4. 集合操作命令

集合是无序的字符串集合,支持集合间的操作,如并集、交集和差集。

  • SADD key member [member ...]:向集合添加一个或多个元素。
  • SREM key member [member ...]:移除集合中的一个或多个元素。
  • SMEMBERS key:返回集合中的所有元素。
  • SISMEMBER key member:检查元素是否是集合的成员。
  • SUNION key [key ...]:返回给定集合的并集。

示例命令:

SADD myset "a" "b" "c"
SISMEMBER myset "a"
SMEMBERS myset
SUNION myset anotherset

# 5. 有序集合操作命令

有序集合与集合类似,但每个元素都有一个分数(score)来进行排序。

  • ZADD key score member [score member ...]:向有序集合中添加一个或多个成员,并设置它们的分数。
  • ZRANGE key start stop [WITHSCORES]:返回指定范围内的成员,按分数从小到大排序。
  • ZREM key member [member ...]:移除有序集合中的一个或多个成员。
  • ZRANGEBYSCORE key min max:返回分数在给定范围内的成员。
  • ZCARD key:返回有序集合的基数(即成员数量)。

示例命令:

ZADD myzset 1 "one"
ZADD myzset 2 "two"
ZRANGE myzset 0 -1 WITHSCORES
ZREM myzset "one"

# 6. 哈希操作命令

哈希是一种键值对集合,类似于一个小型的数据表行。

  • HSET key field value [field value ...]:设置哈希表中的字段值。
  • HGET key field:获取哈希表中指定字段的值。
  • HDEL key field [field ...]:删除一个或多个字段。
  • HGETALL key:返回哈希表中所有字段和值。
  • HEXISTS key field:检查哈希表中是否存在指定字段。

示例命令:

HSET user:1000 name "Alice" age 30
HGET user:1000 name
HGETALL user:1000
HDEL user:1000 age

# 7. 发布订阅(Pub/Sub)命令

Redis 支持发布/订阅模式,用于消息通信。

  • PUBLISH channel message:将消息发布到指定的频道。
  • SUBSCRIBE channel [channel ...]:订阅一个或多个频道,接收来自这些频道的消息。
  • UNSUBSCRIBE [channel ...]:退订指定的频道。

示例命令:

PUBLISH news "Hello, Subscribers!"
SUBSCRIBE news

# 8. 事务命令

Redis 支持简单的事务,通过以下命令来保证多个操作的原子性。

  • MULTI:标记一个事务块的开始。
  • EXEC:执行事务块中的所有命令。
  • DISCARD:取消事务块。
  • WATCH key [key ...]:监视一个或多个键,防止它们在事务执行之前被修改。

示例命令:

MULTI
SET key1 "value1"
INCR counter
EXEC

# 总结

Redis 提供了大量的命令来操作其支持的数据类型,包括字符串、列表、集合、有序集合、哈希等,以及实现发布/订阅、事务等功能。这些命令使得 Redis 成为一个灵活、高效的内存数据库,能够应对各种复杂的应用场景。了解这些常用命令并熟练掌握它们,可以帮助开发者在实际项目中更加高效地使用 Redis。

上次更新: 2024/11/03, 18:33:01
Redis数据类型
Redis持久化机制

← Redis数据类型 Redis持久化机制→

Copyright © 2023-2024 Wray | 鄂ICP备2024050235号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式