Redis基础及常用指令

针对 Redis 的安装、基本命令、数据类型以及持久化的详细扩展,包括对应的 Redis 指令:

Redis篇
├── Redis 基础
│   ├── Redis 的安装
│   │   ├── 在 Linux 上安装 Redis
│   │   │   ├── 从源代码编译安装
│   │   │   └── 使用包管理器安装
│   │   ├── 在 Windows 上安装 Redis
│   │   │   ├── 使用 Windows 版本的 Redis
│   │   │   └── 使用 Docker 容器安装
│   │   └── 在 macOS 上安装 Redis
│   │       ├── 使用 Homebrew 安装
│   │       └── 从源代码编译安装
│   ├── Redis 的基本命令
│   │   ├── 通用命令
│   │   │   ├── CONFIG GET key
│   │   │   ├── CONFIG SET key value
│   │   │   ├── INFO [section]
│   │   │   └── SHUTDOWN
│   │   ├── 数据操作命令
│   │   │   ├── SET key value
│   │   │   ├── GET key
│   │   │   ├── DEL key [key ...]
│   │   │   ├── EXISTS key [key ...]
│   │   │   ├── TYPE key
│   │   │   └── TTL key
│   │   ├── 键空间命令
│   │   │   ├── KEYS pattern
│   │   │   ├── SCAN cursor [MATCH pattern] [COUNT count]
│   │   │   └── RANDOMKEY
│   │   ├── 事务命令
│   │   │   ├── MULTI
│   │   │   ├── EXEC
│   │   │   ├── DISCARD
│   │   │   └── WATCH key [key ...]
│   │   └── 连接命令
│   │       ├── AUTH password
│   │       ├── ECHO message
│   │       ├── QUIT
│   │       └── SELECT index
│   ├── Redis 的数据类型
│   │   ├── String
│   │   │   ├── SET key value
│   │   │   ├── GET key
│   │   │   ├── INCR key
│   │   │   ├── DECR key
│   │   │   ├── INCRBY key increment
│   │   │   ├── DECRBY key decrement
│   │   │   ├── MSET key value [key value ...]
│   │   │   ├── MGET key [key ...]
│   │   │   ├── SETEX key seconds value
│   │   │   ├── PSETEX key milliseconds value
│   │   │   └── GETSET key value
│   │   ├── Hash
│   │   │   ├── HSET key field value
│   │   │   ├── HGET key field
│   │   │   ├── HMSET key field value [field value ...]
│   │   │   ├── HMGET key field [field ...]
│   │   │   ├── HDEL key field [field ...]
│   │   │   ├── HEXISTS key field
│   │   │   ├── HLEN key
│   │   │   ├── HKEYS key
│   │   │   ├── HVALS key
│   │   │   ├── HGETALL key
│   │   │   └── HSCAN cursor [MATCH pattern] [COUNT count]
│   │   ├── List
│   │   │   ├── LPUSH key value [value ...]
│   │   │   ├── RPUSH key value [value ...]
│   │   │   ├── LPOP key
│   │   │   ├── RPOP key
│   │   │   ├── LINSERT key BEFORE|AFTER pivot value
│   │   │   ├── LINDEX key index
│   │   │   ├── LSET key index value
│   │   │   ├── LREM key count value
│   │   │   ├── LTRIM key start stop
│   │   │   ├── LLEN key
│   │   │   ├── LRANGE key start stop
│   │   │   └── BRPOP key [key ...] timeout
│   │   ├── Set
│   │   │   ├── SADD key member [member ...]
│   │   │   ├── SMEMBERS key
│   │   │   ├── SREM key member [member ...]
│   │   │   ├── SISMEMBER key member
│   │   │   ├── SCARD key
│   │   │   ├── SINTER key [key ...]
│   │   │   ├── SUNION key [key ...]
│   │   │   ├── SDIFF key [key ...]
│   │   │   ├── SSCAN key cursor [MATCH pattern] [COUNT count]
│   │   │   └── SRANDMEMBER key [count]
│   │   ├── Sorted Set
│   │   │   ├── ZADD key score member [score member ...]
│   │   │   ├── ZRANGE key start stop [WITHSCORES]
│   │   │   ├── ZREVRANGE key start stop [WITHSCORES]
│   │   │   ├── ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
│   │   │   ├── ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
│   │   │   ├── ZREM key member [member ...]
│   │   │   ├── ZREMRangeByRank key start stop
│   │   │   ├── ZREMRangeByScore key min max
│   │   │   ├── ZCARD key
│   │   │   ├── ZSCORE key member
│   │   │   ├── ZUNIONSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
│   │   │   ├── ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
│   │   │   └── ZSCAN key cursor [MATCH pattern] [COUNT count]
│   │   └── 其他数据类型
│   │       ├── BitField
│   │       ├── Stream
│   │       └── Module-specific Types
│   └── Redis 的持久化
│       ├── RDB
│   │   │   ├── 配置选项
│   │   │   │   ├── save <seconds> <changes>
│   │   │   │   ├── dbfilename <filename>
│   │   │   │   └── dir <directory>
│   │   │   ├── 持久化流程
│   │   │   │   ├── 触发条件
│   │   │   │   ├── 写入过程
│   │   │   │   └── 文件恢复
│   │   │   └── 最佳实践
│   │       └── AOF
│   │           ├── 配置选项
│   │           │   ├── appendonly yes/no
│   │           │   ├── appendfilename <filename>
│   │           │   ├── dir <directory>
│   │           │   ├── appendfsync always/everysec/no
│   │           │   └── no-appendfsync-on-rewrite yes/no
│   │           ├── 持久化流程
│   │           │   ├── 触发条件
│   │           │   ├── 写入过程
│   │           │   └── 文件恢复
│   │           └── 最佳实践
└── 在 Java 中的应用
    ├── Jedis
    │   ├── Jedis 的连接
    │   │   ├── 单机连接
    │   │   ├── 集群连接
    │   │   └── 连接池
    │   ├── Jedis 的基本操作
    │   │   ├── CRUD 操作
    │   │   ├── 事务管理
    │   │   └── 监听与发布
    │   └── Jedis 的高级功能
    │       ├── 管道(Pipeline)
    │       ├── 事务(Transactions)
    │       └── 发布与订阅
    ├── Lettuce
    │   ├── Lettuce 的连接
    │   │   ├── 单机连接
    │   │   ├── 集群连接
    │   │   └── 连接池
    │   ├── Lettuce 的基本操作
    │   │   ├── CRUD 操作
    │   │   ├── 事务管理
    │   │   └── 监听与发布
    │   └── Lettuce 的高级功能
    │       ├── 管道(Pipeline)
    │       ├── 事务(Transactions)
    │       └── 发布与订阅
    └── Spring Data Redis
        ├── Spring Data Redis 的配置
        │   ├── 配置文件
        │   ├── 连接池配置
        │   └── 事务管理
        ├── Spring Data Redis 的基本操作
        │   ├── CRUD 操作
        │   ├── 事务管理
        │   └── 监听与发布
        └── Spring Data Redis 的高级功能
            ├── 管道(Pipeline)
            ├── 事务(Transactions)
            └── 发布与订阅

Redis 的基本命令

通用命令
  • CONFIG GET key:获取配置项的值。
  • CONFIG SET key value:设置配置项的值。
  • INFO [section]:显示服务器的各种信息。
  • SHUTDOWN:关闭 Redis 服务器。
数据操作命令
  • SET key value:设置键的值。
  • GET key:获取键的值。
  • DEL key [key …]:删除一个或多个键。
  • EXISTS key [key …]:判断一个或多个键是否存在。
  • TYPE key:获取键的类型。
  • TTL key:获取键的生存时间。
键空间命令
  • KEYS pattern:查找所有匹配给定模式的键。
  • SCAN cursor [MATCH pattern] [COUNT count]:迭代键空间。
  • RANDOMKEY:随机返回数据库中的一个键。
事务命令
  • MULTI:标记一个事务块的开始。
  • EXEC:执行所有事务块内的命令。
  • DISCARD:取消执行事务块内的所有命令。
  • WATCH key [key …]:监视一个或多个键。
连接命令
  • AUTH password:认证客户端。
  • ECHO message:返回给定的消息。
  • QUIT:断开客户端连接。
  • SELECT index:选择数据库索引。

Redis 的数据类型

String
  • SET key value:设置键的值。
  • GET key:获取键的值。
  • INCR key:递增键的值。
  • DECR key:递减键的值。
  • INCRBY key increment:递增键的值。
  • DECRBY key decrement:递减键的值。
  • MSET key value [key value …]:同时设置多个键的值。
  • MGET key [key …]:同时获取多个键的值。
  • SETEX key seconds value:设置键的值并设置过期时间。
  • PSETEX key milliseconds value:设置键的值并设置毫秒级别的过期时间。
  • GETSET key value:获取旧值并设置新值。
Hash
  • HSET key field value:设置哈希表中键的字段的值。
  • HGET key field:获取哈希表中键的字段的值。
  • HMSET key field value [field value …]:同时设置多个字段的值。
  • HMGET key field [field …]:同时获取多个字段的值。
  • HDEL key field [field …]:删除一个或多个字段。
  • HEXISTS key field:判断字段是否存在。
  • HLEN key:获取哈希表中字段的数量。
  • HKEYS key:获取哈希表中所有的字段。
  • HVALS key:获取哈希表中所有值。
  • HGETALL key:获取哈希表中的所有字段和值。
  • HSCAN key cursor [MATCH pattern] [COUNT count]:迭代哈希表中的字段。
List
  • LPUSH key value [value …]:在列表前面插入一个或多个值。
  • RPUSH key value [value …]:在列表后面插入一个或多个值。
  • LPOP key:移除并返回列表的第一个元素。
  • RPOP key:移除并返回列表的最后一个元素。
  • LINSERT key BEFORE|AFTER pivot value:在列表的指定元素前后插入元素。
  • LINDEX key index:获取列表中指定位置的元素。
  • LSET key index value:设置列表中指定位置的元素。
  • LREM key count value:移除列表中等于给定值的元素。
  • LTRIM key start stop:截取列表中指定范围的元素。
  • LLEN key:获取列表的长度。
  • LRANGE key start stop:获取列表中指定范围的元素。
  • BRPOP key [key …] timeout:从列表尾部弹出一个元素,如果列表为空则等待。
Set
  • SADD key member [member …]:向集合添加一个或多个成员。
  • SMEMBERS key:获取集合中的所有成员。
  • SREM key member [member …]:移除集合中的一个或多个成员。
  • SISMEMBER key member:判断成员是否在集合中。
  • SCARD key:获取集合中的成员数量。
  • SINTER key [key …]:获取多个集合的交集。
  • SUNION key [key …]:获取多个集合的并集。
  • SDIFF key [key …]:获取多个集合的差集。
  • SSCAN key cursor [MATCH pattern] [COUNT count]:迭代集合中的成员。
  • SRANDMEMBER key [count]:随机返回集合中的一个或多个成员。
Sorted Set
  • ZADD key score member [score member …]:向有序集合添加一个或多个成员及其分数。
  • ZRANGE key start stop [WITHSCORES]:获取有序集合中指定范围的成员。
  • ZREVRANGE key start stop [WITHSCORES]:获取有序集合中指定范围的成员,逆序排列。
  • ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]:获取有序集合中指定分数范围的成员。
  • ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]:获取有序集合中指定分数范围的成员,逆序排列。
  • ZREM key member [member …]:移除有序集合中的一个或多个成员。
  • ZREMRangeByRank key start stop:移除有序集合中指定排名范围的成员。
  • ZREMRangeByScore key min max:移除有序集合中指定分数范围的成员。
  • ZCARD key:获取有序集合中的成员数量。
  • ZSCORE key member:获取有序集合中成员的分数。
  • ZUNIONSTORE destination numkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]:计算多个有序集合的并集,并将结果保存到新的有序集合中。
  • ZINTERSTORE destination numkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]:计算多个有序集合的交集,并将结果保存到新的有序集合中。
  • ZSCAN key cursor [MATCH pattern] [COUNT count]:迭代有序集合中的成员。

通过这些详细的命令,你可以充分利用 Redis 的强大功能来管理和操作数据。接下来的部分将继续介绍 Redis 的持久化机制以及如何在 Java 中使用 Redis。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值