本备忘单旨在快速理解 redis 所涉及的主要概念,提供了最常用的SQL语句,供您参考。
| :- | -- |
|---|---|
| ACL LOAD | 从配置的 ACL 文件重新加载 ACL |
| ACL SAVE | 将当前的 ACL 规则保存在配置的 ACL 文件中 |
| ACL LIST | 以 ACL 配置文件格式列出当前的 ACL 规则 |
| ACL USERS | 列出所有配置的ACL规则的用户名 |
| ACL GETUSER | 获取特定 ACL 用户的规则 |
| ACL SETUSER | 修改或创建特定 ACL 用户的规则 |
| ACL DELUSER | 删除指定的 ACL 用户和关联的规则 |
| ACL CAT | 列出 ACL 类别或类别内的命令 |
| ACL GENPASS | 生成用于 ACL 用户的伪随机安全密码 |
| ACL WHOAMI | 返回关联到当前连接的用户的名称 |
| ACL LOG | 列出由于 ACL 到位而被拒绝的最新事件 |
| ACL HELP | 显示有关ACL访问控制的帮助信息 |
| BGREWRITEAOF | 异步重写 append-only 文件 |
| BGSAVE | 将数据集异步保存到磁盘 |
| CONFIG GET | 获取配置参数的值 |
| CONFIG REWRITE | 用内存中的配置重写配置文件 |
| CONFIG SET | 将配置参数设置为给定值 |
| CONFIG RESETSTAT | 重置 INFO 返回的统计数据 |
| DBSIZE | 返回所选数据库中的键数 |
| DEBUG OBJECT | 获取某个key的调试信息 |
| DEBUG SEGFAULT | 使服务器崩溃 |
| FLUSHALL | 从所有数据库中删除所有密钥 |
| FLUSHDB | 从当前数据库中删除所有键 |
| LOLWUT | 显示一些计算机信息和 Redis 版本 |
| LASTSAVE | 获取上次成功保存到磁盘的 UNIX 时间戳 |
| MEMORY DOCTOR | 输出内存问题报告 |
| MEMORY HELP | 显示有关内存的使用帮助 |
| MEMORY MALLOC-STATS | 显示分配器内部统计 |
| MEMORY PURGE | 要求分配器释放内存 |
| MEMORY STATS | 显示内存使用详情(该死,运维的我经常用到) |
| MEMORY USAGE | 估计一个键的内存使用 |
| MODULE LIST | 列出服务器加载的所有模块 |
| MODULE LOAD | 加载模块 |
| MODULE UNLOAD | 卸载模块 |
| MONITOR | 实时监听服务器收到的所有请求 |
| SAVE | 将数据集同步保存到磁盘 |
| SHUTDOWN | 将数据集同步保存到磁盘,然后关闭服务器 |
| 使服务器成为另一个实例的副本,或将其提升为主服务器 (从Redis 5开始 REPLICAOF了) | |
| REPLICAOF | 使服务器成为另一个实例的副本,或将其提升为主服务器 |
| SLOWLOG | 管理 Redis 慢查询日志 |
| SWAPDB | 交换两个Redis数据库 |
| SYNC | 用于复制的内部命令(主) |
| PSYNC | 用于复制的内部命令(备) |
| LATENCY DOCTOR | 返回人类可读的延迟分析报告 |
| LATENCY GRAPH | 返回事件的延迟图 |
| LATENCY HISTORY | 返回事件的时间戳延迟样本 |
| LATENCY LATEST | 返回所有事件的最新延迟样本 |
| LATENCY RESET | 重置一个或多个事件的延迟数据 |
| LATENCY HELP | 显示有关不同子命令的有用文本 |
COMMAND INFO command-name [command-name ...]
redis> COMMAND INFO get set eval
1) 1) "get"
2) (integer) 2
3) 1) "readonly"
2) "fast"
4) (integer) 1
5) (integer) 1
6) (integer) 1
7) 1) "@read"
2) "@string"
3) "@fast"
2) 1) "set"
2) (integer) -3
3) 1) "write"
2) "denyoom"
4) (integer) 1
5) (integer) 1
6) (integer) 1
7) 1) "@write"
2) "@string"
3) "@slow"
3) 1) "eval"
2) (integer) -3
3) 1) "noscript"
2) "movablekeys"
4) (integer) 0
5) (integer) 0
6) (integer) 0
7) 1) "@slow"
2) "@scripting"
获取特定 Redis 命令详细信息的数组
| :- | -- |
|---|---|
| AUTH | 向服务器进行身份验证 |
| CLIENT CACHING | 指示服务器在下一个请求中是否跟踪键 |
| CLIENT KILL | 终止客户端的连接 |
| CLIENT LIST | 获取客户端连接列表 |
| CLIENT GETNAME | 获取当前连接名称 |
| CLIENT GETREDIR | 获取跟踪通知重定向客户端 ID(如果有) |
| CLIENT PAUSE | 停止处理来自客户端的命令一段时间 |
| CLIENT REPLY | 指示服务器是否回复命令 |
| CLIENT SETNAME | 设置当前连接名称 |
| CLIENT TRACKING | 启用或禁用服务器辅助客户端缓存支持 |
| CLIENT UNBLOCK | 取消阻止来自不同连接的阻塞命令中阻塞的客户端 |
| HELLO | 切换Redis协议 |
| QUIT | 关闭连接 |
| RESET | 重置连接 |
| SELECT | 更改为当前连接选择的数据库 |
BITPOS key bit [start] [end]
redis> SET mykey "\xff\xf0\x00"
"OK"
redis> BITPOS mykey 0
(integer) 12
redis> SET mykey "\x00\xff\xf0"
"OK"
redis> BITPOS mykey 1 0
(integer) 8
redis> BITPOS mykey 1 2
(integer) 16
redis> set mykey "\x00\x00\x00"
"OK"
redis> BITPOS mykey 1
(integer) -1
查找字符串中设置或清除的第一位
STRALGO LCS algo-specific-argument [algo-specific-argument
...]
redis> STRALGO LCS KEYS key1 key2 IDX
1) "matches"
2) 1) 1) 1) (integer) 4
2) (integer) 7
2) 1) (integer) 5
2) (integer) 8
2) 1) 1) (integer) 2
2) (integer) 3
2) 1) (integer) 0
2) (integer) 1
3) "len"
4) (integer) 6
针对字符串运行算法(目前为 LCS)
SDIFFSTORE destination key [key ...]
redis> SADD key1 "a"
(integer) 1
redis> SADD key1 "b"
(integer) 1
redis> SADD key1 "c"
(integer) 1
redis> SADD key2 "c"
(integer) 1
redis> SADD key2 "d"
(integer) 1
redis> SADD key2 "e"
(integer) 1
redis> SDIFFSTORE key key1 key2
(integer) 2
redis> SMEMBERS key
1) "a"
2) "b"
减去多个集合并将结果集合存储在一个键中
SINTERSTORE destination key [key ...]
redis> SADD key1 "a"
(integer) 1
redis> SADD key1 "b"
(integer) 1
redis> SADD key1 "c"
(integer) 1
redis> SADD key2 "c"
(integer) 1
redis> SADD key2 "d"
(integer) 1
redis> SADD key2 "e"
(integer) 1
redis> SINTERSTORE key key1 key2
(integer) 1
redis> SMEMBERS key
1) "c"
将多个集合相交并将结果集合存储在一个键中
SPOP key [count]
redis> SADD myset "one"
(integer) 1
redis> SADD myset "two"
(integer) 1
redis> SADD myset "three"
(integer) 1
redis> SPOP myset
"two"
redis> SMEMBERS myset
1) "one"
2) "three"
redis> SADD myset "four"
(integer) 1
redis> SADD myset "five"
(integer) 1
redis> SPOP myset 3
1) "four"
2) "five"
3) "three"
redis> SMEMBERS myset
1) "one"
从集合中删除并返回一个或多个随机成员
SUNIONSTORE destination key [key ...]
redis> SADD key1 "a"
(integer) 1
redis> SADD key1 "b"
(integer) 1
redis> SADD key1 "c"
(integer) 1
redis> SADD key2 "c"
(integer) 1
redis> SADD key2 "d"
(integer) 1
redis> SADD key2 "e"
(integer) 1
redis> SUNIONSTORE key key1 key2
(integer) 5
redis> SMEMBERS key
1) "a"
2) "c"
3) "e"
4) "b"
5) "d"
添加多个集合并将结果集合存储在一个键中
| :- | -- |
|---|---|
| BRPOPLPUSH | 从列表中弹出一个元素,将其推入另一个列表并返回;或阻塞直到有一个可用 |
| BLMOVE | 从列表中弹出一个元素,将其推入另一个列表并返回;或阻塞直到有一个可用 |
LRANGE key start stop
redis> RPUSH mylist "one"
(integer) 1
redis> RPUSH mylist "two"
(integer) 2
redis> RPUSH mylist "three"
(integer) 3
redis> LRANGE mylist 0 0
1) "one"
redis> LRANGE mylist -3 2
1) "one"
2) "two"
3) "three"
redis> LRANGE mylist -100 100
1) "one"
2) "two"
3) "three"
redis> LRANGE mylist 5 10
(empty list or set)
从列表中获取一系列元素
RPOPLPUSH source destination
redis> RPUSH mylist "one"
(integer) 1
redis> RPUSH mylist "two"
(integer) 2
redis> RPUSH mylist "three"
(integer) 3
redis> RPOPLPUSH mylist myotherlist
"three"
redis> LRANGE mylist 0 -1
1) "one"
2) "two"
redis> LRANGE myotherlist 0 -1
1) "three"
删除列表中的最后一个元素,将其添加到另一个列表中并返回
LMOVE source destination LEFT|RIGHT LEFT|RIGHT
redis> RPUSH mylist "one"
(integer) 1
redis> RPUSH mylist "two"
(integer) 2
redis> RPUSH mylist "three"
(integer) 3
redis> LMOVE mylist myotherlist RIGHT LEFT
"three"
redis> LMOVE mylist myotherlist LEFT RIGHT
"one"
redis> LRANGE mylist 0 -1
1) "two"
redis> LRANGE myotherlist 0 -1
1) "three"
2) "one"
从列表中弹出一个元素,将其推入另一个列表并返回
ZADD key [NX|XX] [GT|LT] [CH] [INCR] score member [score
member ...]
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 1 "uno"
(integer) 1
redis> ZADD myzset 2 "two" 3 "three"
(integer) 2
redis> ZRANGE myzset 0 -1 WITHSCORES
1) "one"
2) "1"
3) "uno"
4) "1"
5) "two"
6) "2"
7) "three"
8) "3"
将一个或多个成员添加到有序集合中,或者更新其分数(如果它已经存在)
ZDIFF numkeys key [key ...] [WITHSCORES]
redis> ZADD zset1 1 "one"
(integer) 1
redis> ZADD zset1 2 "two"
(integer) 1
redis> ZADD zset1 3 "three"
(integer) 1
redis> ZADD zset2 1 "one"
(integer) 1
redis> ZADD zset2 2 "two"
(integer) 1
redis> ZDIFF 2 zset1 zset2
1) "three"
redis> ZDIFF 2 zset1 zset2 WITHSCORES
1) "three"
2) "3"
减去多个排序集
ZDIFFSTORE destination numkeys key [key ...]
redis> ZADD zset1 1 "one"
(integer) 1
redis> ZADD zset1 2 "two"
(integer) 1
redis> ZADD zset1 3 "three"
(integer) 1
redis> ZADD zset2 1 "one"
(integer) 1
redis> ZADD zset2 2 "two"
(integer) 1
redis> ZDIFFSTORE out 2 zset1 zset2
(integer) 1
redis> ZRANGE out 0 -1 WITHSCORES
1) "three"
2) "3"
减去多个排序集并将生成的排序集存储在新键中
ZINTER numkeys key [key ...] [WEIGHTS weight [weight ...]]
[AGGREGATE SUM|MIN|MAX] [WITHSCORES]
redis> ZADD zset1 1 "one"
(integer) 1
redis> ZADD zset1 2 "two"
(integer) 1
redis> ZADD zset2 1 "one"
(integer) 1
redis> ZADD zset2 2 "two"
(integer) 1
redis> ZADD zset2 3 "three"
(integer) 1
redis> ZINTER 2 zset1 zset2
1) "one"
2) "two"
redis> ZINTER 2 zset1 zset2 WITHSCORES
1) "one"
2) "2"
3) "two"
4) "4"
与多个排序集相交
ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight
[weight ...]] [AGGREGATE SUM|MIN|MAX]
redis> ZADD zset1 1 "one"
(integer) 1
redis> ZADD zset1 2 "two"
(integer) 1
redis> ZADD zset2 1 "one"
(integer) 1
redis> ZADD zset2 2 "two"
(integer) 1
redis> ZADD zset2 3 "three"
(integer) 1
redis> ZINTERSTORE out 2 zset1 zset2 WEIGHTS 2 3
(integer) 2
redis> ZRANGE out 0 -1 WITHSCORES
1) "one"
2) "5"
3) "two"
4) "10"
将多个排序集相交并将生成的排序集存储在新键中
ZRANGE key start stop [WITHSCORES]
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZRANGE myzset 0 -1
1) "one"
2) "two"
3) "three"
redis> ZRANGE myzset 2 3
1) "three"
redis> ZRANGE myzset -2 -1
1) "two"
2) "three"
按索引返回排序集中的一系列成员
ZREVRANGEBYLEX key max min [LIMIT offset count]
redis> ZADD myzset 0 a 0 b 0 c 0 d 0 e 0 f 0 g
(integer) 7
redis> ZREVRANGEBYLEX myzset [c -
1) "c"
2) "b"
3) "a"
redis> ZREVRANGEBYLEX myzset (c -
1) "b"
2) "a"
redis> ZREVRANGEBYLEX myzset (g [aaa
1) "f"
2) "e"
3) "d"
4) "c"
5) "b"
返回排序集中的一系列成员,按字典范围,从高到低的字符串排序。
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZRANGEBYSCORE myzset -inf +inf
1) "one"
2) "two"
3) "three"
redis> ZRANGEBYSCORE myzset 1 2
1) "one"
2) "two"
redis> ZRANGEBYSCORE myzset (1 2
1) "two"
redis> ZRANGEBYSCORE myzset (1 (2
(empty list or set)
按分数返回排序集中的一系列成员
ZREMRANGEBYLEX key min max
redis> ZADD myzset 0 aaaa 0 b 0 c 0 d 0 e
(integer) 5
redis> ZADD myzset 0 foo 0 zap 0 zip 0 ALPHA 0 alpha
(integer) 5
redis> ZRANGE myzset 0 -1
1) "ALPHA"
2) "aaaa"
3) "alpha"
4) "b"
5) "c"
6) "d"
7) "e"
8) "foo"
9) "zap"
10) "zip"
redis> ZREMRANGEBYLEX myzset [alpha [omega
(integer) 6
redis> ZRANGE myzset 0 -1
1) "ALPHA"
2) "aaaa"
3) "zap"
4) "zip"
删除给定词典范围之间的排序集中的所有成员
ZREVRANGE key start stop [WITHSCORES]
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZREVRANGE myzset 0 -1
1) "three"
2) "two"
3) "one"
redis> ZREVRANGE myzset 2 3
1) "one"
redis> ZREVRANGE myzset -2 -1
1) "two"
2) "one"
按索引返回排序集中的一系列成员,分数从高到低排序
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZREVRANGEBYSCORE myzset +inf -inf
1) "three"
2) "two"
3) "one"
redis> ZREVRANGEBYSCORE myzset 2 1
1) "two"
2) "one"
redis> ZREVRANGEBYSCORE myzset 2 (1
1) "two"
redis> ZREVRANGEBYSCORE myzset (2 (1
(empty list or set)
按分数返回排序集中的一系列成员,分数从高到低排序
ZUNION numkeys key [key ...] [WEIGHTS weight [weight ...]]
[AGGREGATE SUM|MIN|MAX] [WITHSCORES]
redis> ZADD zset1 1 "one"
(integer) 1
redis> ZADD zset1 2 "two"
(integer) 1
redis> ZADD zset2 1 "one"
(integer) 1
redis> ZADD zset2 2 "two"
(integer) 1
redis> ZADD zset2 3 "three"
(integer) 1
redis> ZUNION 2 zset1 zset2
1) "one"
2) "three"
3) "two"
redis> ZUNION 2 zset1 zset2 WITHSCORES
1) "one"
2) "2"
3) "three"
4) "3"
5) "two"
6) "4"
添加多个排序集
ZUNIONSTORE destination numkeys key [key ...] [WEIGHTS weight
[weight ...]] [AGGREGATE SUM|MIN|MAX]
redis> ZADD zset1 1 "one"
(integer) 1
redis> ZADD zset1 2 "two"
(integer) 1
redis> ZADD zset2 1 "one"
(integer) 1
redis> ZADD zset2 2 "two"
(integer) 1
redis> ZADD zset2 3 "three"
(integer) 1
redis> ZUNIONSTORE out 2 zset1 zset2 WEIGHTS 2 3
(integer) 3
redis> ZRANGE out 0 -1 WITHSCORES
1) "one"
2) "5"
3) "three"
4) "9"
5) "two"
6) "10"
添加多个排序集并将生成的排序集存储在新键中
GEOADD key longitude latitude member [longitude latitude member ...]
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEODIST Sicily Palermo Catania
"166274.1516"
redis> GEORADIUS Sicily 15 37 100 km
1) "Catania"
redis> GEORADIUS Sicily 15 37 200 km
1) "Palermo"
2) "Catania"
在使用排序集表示的地理空间索引中添加一个或多个地理空间项
GEOPOS key member [member ...]
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEOPOS Sicily Palermo Catania NonExisting
1) 1) "13.36138933897018433"
2) "38.11555639549629859"
2) 1) "15.08726745843887329"
2) "37.50266842333162032"
3) (nil)
返回地理空间索引成员的经度和纬度
GEODIST key member1 member2 [m|km|ft|mi]
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEODIST Sicily Palermo Catania
"166274.1516"
redis> GEODIST Sicily Palermo Catania km
"166.2742"
redis> GEODIST Sicily Palermo Catania mi
"103.3182"
redis> GEODIST Sicily Foo Bar
(nil)
返回地理空间索引的两个成员之间的距离
GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT
count] [ASC|DESC] [STORE key] [STOREDIST key]
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEORADIUS Sicily 15 37 200 km WITHDIST
1) 1) "Palermo"
2) "190.4424"
2) 1) "Catania"
2) "56.4413"
redis> GEORADIUS Sicily 15 37 200 km WITHCOORD
1) 1) "Palermo"
2) 1) "13.36138933897018433"
2) "38.11555639549629859"
2) 1) "Catania"
2) 1) "15.08726745843887329"
2) "37.50266842333162032"
redis> GEORADIUS Sicily 15 37 200 km WITHDIST WITHCOORD
1) 1) "Palermo"
2) "190.4424"
3) 1) "13.36138933897018433"
2) "38.11555639549629859"
2) 1) "Catania"
2) "56.4413"
3) 1) "15.08726745843887329"
2) "37.50266842333162032"
查询表示地理空间索引的排序集,以获取与某个点的给定最大距离匹配的成员
GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count]
[ASC|DESC] [STORE key] [STOREDIST key]
redis> GEOADD Sicily 13.583333 37.316667 "Agrigento"
(integer) 1
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEORADIUSBYMEMBER Sicily Agrigento 100 km
1) "Agrigento"
2) "Palermo"
查询表示地理空间索引的排序集,以获取与成员的给定最大距离相匹配的成员
GEOSEARCH key [FROMMEMBER member] [FROMLONLAT longitude latitude] [BYRADIUS radius m|km|ft|mi]
[BYBOX width height m|km|ft|mi] [ASC|DESC] [COUNT count] [WITHCOORD] [WITHDIST] [WITHHASH]
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEOADD Sicily 12.758489 38.788135 "edge1" 17.241510 38.788135 "edge2"
(integer) 2
redis> GEOSEARCH Sicily FROMLONLAT 15 37 BYRADIUS 200 km ASC
1) "Catania"
2) "Palermo"
redis> GEOSEARCH Sicily FROMLONLAT 15 37 BYBOX 400 400 km ASC
1) "Catania"
2) "Palermo"
3) "edge2"
4) "edge1"
查询表示地理空间索引的排序集,以获取框或圆区域内的成员。
| :- | -- |
|---|---|
| GEOSEARCHSTORE | 查询表示地理空间索引的排序集以获取框或圆区域内的成员,并将结果存储在另一个键中 |
XADD key [MAXLEN [=|~] length] [NOMKSTREAM] *|ID field value [field value ...]
redis> XADD mystream * name Sara surname OConnor
"1609040574632-0"
redis> XADD mystream * field1 value1 field2 value2 field3 value3
"1609040574632-1"
redis> XLEN mystream
(integer) 2
redis> XRANGE mystream - +
1) 1) "1609040574632-0"
2) 1) "name"
2) "Sara"
3) "surname"
4) "OConnor"
2) 1) "1609040574632-1"
2) 1) "field1"
2) "value1"
3) "field2"
4) "value2"
5) "field3"
6) "value3"
将新条目附加到流
XTRIM key MAXLEN [=|~] length
redis> XADD mystream * field1 A field2 B field3 C field4 D
"1609040575750-0"
redis> XTRIM mystream MAXLEN 2
(integer) 0
redis> XRANGE mystream - +
1) 1) "1609040575750-0"
2) 1) "field1"
2) "A"
3) "field2"
4) "B"
5) "field3"
6) "C"
7) "field4"
8) "D"
将流修剪为(大约如果传递了“~”)特定大小
XRANGE key start end [COUNT count]
redis> XADD writers * name Virginia surname Woolf
"1609040578002-0"
redis> XADD writers * name Jane surname Austen
"1609040578002-1"
redis> XADD writers * name Toni surname Morrison
"1609040578003-0"
redis> XADD writers * name Agatha surname Christie
"1609040578003-1"
redis> XADD writers * name Ngozi surname Adichie
"1609040578003-2"
redis> XLEN writers
(integer) 5
redis> XRANGE writers - + COUNT 2
1) 1) "1609040578002-0"
2) 1) "name"
2) "Virginia"
3) "surname"
4) "Woolf"
2) 1) "1609040578002-1"
2) 1) "name"
2) "Jane"
3) "surname"
4) "Austen"
返回流中的一系列元素,其 ID 与指定的 ID 间隔相匹配
XREVRANGE key end start [COUNT count]
redis> XADD writers * name Virginia surname Woolf
"1609040579130-0"
redis> XADD writers * name Jane surname Austen
"1609040579130-1"
redis> XADD writers * name Toni surname Morrison
"1609040579130-2"
redis> XADD writers * name Agatha surname Christie
"1609040579131-0"
redis> XADD writers * name Ngozi surname Adichie
"1609040579131-1"
redis> XLEN writers
(integer) 5
redis> XREVRANGE writers + - COUNT 1
1) 1) "1609040579131-1"
2) 1) "name"
2) "Ngozi"
3) "surname"
4) "Adichie"
返回流中的一系列元素,ID 与指定的 ID 间隔相匹配,与 XRANGE 相比,顺序相反(从大到小的 ID)
| :- | -- |
|---|---|
| CLUSTER ADDSLOTS | 为接收节点分配新的哈希槽 |
| CLUSTER BUMPEPOCH | 提前集群配置纪元 |
| CLUSTER COUNT-FAILURE-REPORTS | 返回给定节点的活动故障报告数 |
| CLUSTER COUNTKEYSINSLOT | 返回指定哈希槽中本地键的个数 |
| CLUSTER DELSLOTS | 在接收节点中将哈希槽设置为未绑定 |
| CLUSTER FAILOVER | 强制副本对其主副本执行手动故障转移 |
| CLUSTER FLUSHSLOTS | 删除节点自身的slot信息 |
| CLUSTER FORGET | 从节点表中删除一个节点 |
| CLUSTER GETKEYSINSLOT | 返回指定哈希槽中的本地键名 |
| CLUSTER INFO | 提供有关 Redis 集群节点状态的信息 |
| CLUSTER KEYSLOT | 返回指定键的哈希槽 |
| CLUSTER MEET | 强制节点集群与另一个节点握手 |
| CLUSTER MYID | 返回节点id |
| CLUSTER NODES | 获取节点的集群配置 |
| CLUSTER REPLICATE | 将节点重新配置为指定主节点的副本 |
| CLUSTER RESET | 重置 Redis 集群节点 |
| CLUSTER SAVECONFIG | 强制节点将集群状态保存在磁盘上 |
| CLUSTER SET-CONFIG-EPOCH | 在新节点中设置配置纪元 |
| CLUSTER SETSLOT | 将哈希槽绑定到特定节点 |
| CLUSTER SLAVES | 列出指定主节点的副本节点 |
| CLUSTER REPLICAS | 列出指定主节点的副本节点 |
| CLUSTER SLOTS | 获取集群插槽数组到节点映射 |
| READONLY | 为到集群副本节点的连接启用读取查询 |
| READWRITE | 禁用对集群副本节点连接的读取查询 |
| :- | -- |
|---|---|
| EVAL | 执行 Lua 脚本服务器端 |
| EVALSHA | 执行 Lua 脚本服务器端 |
| SCRIPT DEBUG | 为执行的脚本设置调试模式 |
| SCRIPT EXISTS | 检查脚本缓存中是否存在脚本 |
| SCRIPT FLUSH | 从脚本缓存中删除所有脚本 |
| SCRIPT KILL | 终止当前正在执行的脚本 |
| SCRIPT LOAD | 将指定的 Lua 脚本加载到脚本缓存中 |
| :- | -- |
|---|---|
| PSUBSCRIBE | 侦听发布到与给定模式匹配的频道的消息 |
| PUBSUB | 检查 Pub/Sub 子系统的状态 |
| PUBLISH | 向频道发布消息 |
| PUNSUBSCRIBE | 停止监听发布到与给定模式匹配的频道的消息 |
| SUBSCRIBE | 收听发布到给定频道的消息 |
| UNSUBSCRIBE | 停止收听发布到给定频道的消息 |