Redis 7.x 系列【4】命令手册

有道无术,术尚可求,有术无道,止于术。

本系列Redis 版本 7.2.5

源码地址:https://gitee.com/pearl-organization/study-redis-demo

1. 说明

提示: 本篇文档会包含所有的命令,但是仅做简单介绍,后续会分篇介绍重要的命令,这里主要起到一个总览导航作用,点击命令会跳转到对应的官方详细介绍。

Redis 命令用于在服务器上执行操作,相当于数据库的 SQL ,其重要性不言而喻。对于开发人员来说,很少使用这些命令直接操作,一般都是通过客户端API进行调用,但是需要掌握一些重要的命令。

Redis 中文网中可以查看命令手册,不过因为延迟问题,目前是 Redis 6.2 版本:

在这里插入图片描述
打开官方命令手册中可以查看最新的所有命令,在右侧可以根据分组进行过滤:
在这里插入图片描述

例如选择 String 后会显示 String 类型所有的命令:
在这里插入图片描述
点击具体的命令后,可以查看详情,首先是语法格式:
在这里插入图片描述
然后是版本、 时间复杂度(大O表示法)ACL、 权限分类:
在这里插入图片描述
接着是命令介绍、相关示例:
在这里插入图片描述

2. 命令手册

下面已表格的形式,分类简介所有的命令,根据 Redis 官网的分组,命令分为以下两大类:

  • coreRedis
  • stackRedis Stack

core 包含以下分组:

  • Generic:基础通用
  • 数据类型:
    • String:字符串
    • List:列表
    • Hash:哈希
    • Set:集合
    • Sorted set:有序集合
    • Stream:流
    • HyperLogLog:基数统计
    • Bitmap:位图
    • Geospatial:地理空间
  • 管理:
    • Connection management:连接管理
    • Cluster management:集群管理
    • Server managment:服务端管理
  • Pub/Sub:发布订阅
  • Scripting and functions:脚本及函数
  • Transactions:事务

stack 包含以下分组:

  • Bloom filter:布隆过滤器
  • Cuckoo filter
  • Count-min sketch
  • JSON
  • Search and query
  • Triggers and functions
  • Auto-suggest
  • T-digest
  • Time series
  • Top-k

2.1 Generic

Redis 作为 KV 型数据库,基础命令则主要包含了针对 Key 的相关操作,所有命令:

命令
COPY 将存储在 key 处的值复制到目标 key
DEL 用于删除 key
DUMP 序列化给定 key ,并返回被序列化的值
EXISTS 检查给定 key 是否存在
EXPIRE 为给定 key 设置过期时间
EXPIREAT 用于为 key 设置过期时间,接受的时间参数是 UNIX 时间戳
EXPIRETIME key 将在该时间到期,返回 UNIX 时间戳
KEYS 查找所有符合给定模式的 key
MIGRATE key 原子性地从当前实例传送到目标实例的指定数据库上
MOVE 将当前数据库的 key 移动到给定的数据库中
OBJECT ENCODING 查看存储在 key 中的对象的内部编码
OBJECT FREQ 查看存储在 key 中的对象的对数访问频率计数器
OBJECT IDLETIME 查询自上次访问 key 中存储的值以来的时间(以秒为单位)
OBJECT REFCOUNT 查看存储在 key 的引用计数
PERSIST 移除 key 的过期时间,key 将持久保持
PEXPIRE 设置 key 的过期时间,以毫秒计
PEXPIREAT 设置 key 过期时间的时间戳(unix timestamp),以毫秒计
PEXPIRETIME PEXPIRETIMEEXPIRETIME具有相同的语义,但以毫秒而不是秒为单位返回Unix的绝对过期时间戳
PTTL 以毫秒为单位返回 key 的剩余的过期时间
RANDOMKEY 从当前数据库中随机返回一个 key
RENAME 修改 key 的名称
RENAMENX 仅当 newkey 不存在时,将 key 改名为 newkey
RESTORE 反序列化给定的序列化值(由 DUMP 生成),并将它和给定的 key 关联
SCAN 迭代数据库中的 key
SORT 对元素进行排序并显示排序结果,不影响这些类型里面存储的数据的排序
SORT_RO SORT命令的只读变体
TOUCH 更改 key 的最后访问时间
TTL 以秒为单位,返回给定 key 的剩余生存时间
TYPE 返回 key 所储存的值的类型
UNLINK 异步删除一个或多个 key
WAIT 用于阻塞客户端,直到之前的写命令已被写到指定数量的副本为止
WAITAOF 用于阻塞客户端,直到之前所有写命令已被同步到 AOF 文件为止

2.2 数据类型

2.2.1 String

字符串是 Redis 的基本数据类型,值是字符串类型,所有命令:

命名 描述
APPEND value 追加到 key 原来的值的末尾
DECR key 中储存的数字值减一
DECRBY key 所储存的值减去给定的减量值 ( decrement )
GET 设置指定 key 的值
GETDEL 获取 key 的值并删除该 key
GETEX 获取 key 的值,并可选择设置其过期时间
GETRANGE 返回 key 中字符串值的子字符
GETSET 将给定 key 的值设为 value ,并返回 key 的旧值
INCR key 中储存的数字值增一
INCRBY key 所储存的值加上给定的增量值 ( increment )
INCRBYFLOAT key 所储存的值加上给定的浮点增量值 ( increment )
LCS 实现了最长公共子序列算法,可用于评估字符串的相似程度
MGET 获取所有(一个或多个)给定 key 的值
MSET 同时设置一个或多个 key-value
MSETNX 同时设置一个或多个 key-value
PSETEX 以毫秒为单位设置 key 的生存时间
SET 设置指定 key 的值
SETEX 设置 key 的值为 value 同时将过期时间设为 seconds
SETNX 只有在 key 不存在时设置 key 的值
SETRANGE 从偏移量 offset 开始用 value 覆写给定 key 所储存的字符串值
STRLEN 返回 key 所储存的字符串值的长度
SUBSTR 返回字符串值的子字符串,由偏移量开始和结束(两者都包含在内)决定
2.2.2 Hash

哈希散列是 Redis 基本数据类型,值中存储的是 Hash 表,特别适合用于存储对象,所有命令:

命名 描述
HDEL 用于删除哈希表中一个或多个字段
HEXISTS 用于判断哈希表中字段是否存在
HEXPIRE 设置一个或多个字段的过期时间,秒为单位
HEXPIREAT HEXPIREAT具有与HEXPIRE相同的效果和语义,但它没有指定TTL(生存时间)的秒数,而是使用Unix时间戳(以秒为单位)
HEXPIRETIME 给定key字段将在该时间点过期,返回自Unix时间戳(以秒为单位)
HGET 获取存储在哈希表中指定字段的值
HGETALL 获取在哈希表中指定 key 的所有字段和值
HINCRBY 为存储在 key 中的哈希表指定字段做整数增量运算
HINCRBYFLOAT
HKEYS 获取存储在 key 中的哈希表的所有字段
HLEN 获取存储在 key 中的哈希表的字段数量
HMGET 用于获取存储在 key 中的哈希表字段的值
HMSET 用于设置存储在 key 中的哈希表字段的值
HPERSIST 删除 key字段上现有的过期时间
HPEXPIRE HEXPIRE类似,以毫秒为单位
HPEXPIREAT HEXPIRE类似,使用Unix时间戳
HPEXPIRETIME HEXPIRETIME具有相同的语义,使用Unix时间戳(以毫秒为单位)
HPTTL HTTL一样,返回具有过期设置的字段的剩余TTL(生存时间),但以毫秒而不是秒为单位
HRANDFIELD 随机获取字段和值
HSCAN 返回的每个元素都是一个元组,每一个元组元素由一个字段和值组成
HSET 为哈希表中的字段赋值
HSETNX 用于为哈希表中不存在的的字段赋值
HSTRLEN 返回字段关联的值的字符串长度,如果键或字段不存在,则返回0
HTTL 返回具有过期设置的字段的剩余TTL(生存时间),秒为单位
HVALS 用于获取哈希表中的所有值
2.2.3 List

列表是 Redis 的基本数据类型,值存储的是列表,所有命令:

命名 描述
LMOVE 删除源列表的第一个或最后一个元素,并移入到目标列表中的第一个或最后一个位置
LMPOP 弹出一个或多个元素
BLMOVE LMOVE的阻塞变体
BLMPOP LMPOP的阻塞变体
BLPOP 移出并获取列表的第一个元素
BRPOP 移出并获取列表的最后一个元素
BRPOPLPUSH 从列表中弹出一个值,并将该值插入到另外一个列表中并返回它
LINDEX 通过索引获取列表中的元素
LINSERT 在列表的元素前或者后插入元素
LLEN 获取列表长度
LPOP 移出并获取列表的第一个元素
LPOS
LPUSH 将一个或多个值插入到列表头部
LPUSHX 将一个值插入到已存在的列表头部
LRANGE 获取列表指定范围内的元素
LREM 移除列表元素
LSET 通过索引设置列表元素的值
LTRIM 对一个列表进行修剪
RPOP 移除并获取列表最后一个元素
RPOPLPUSH 移除列表的最后一个元素,并将该元素添加到另一个列表并返回
RPUSH 在列表中添加一个或多个值
RPUSHX 为已存在的列表添加值
2.2.4 Set

集合是 Redis 的基本数据类型,值存储的是自动排重的集合,常用命令:

命名 描述
SADD
SCARD
SDIFF
SDIFFSTORE
SINTER
SINTERCARD
SINTERSTORE
SISMEMBER
SMEMBERS
SMISMEMBER
SMOVE
SPOP
SRANDMEMBER
SREM
SSCAN
SUNION
SUNIONSTORE
2.2.5 Sorted set

排序集合是 Redis 的基本数据类型,值存储的是自动排重的集合,每个成员都关联了一个评分,常用命令:

命名 描述
BZMPOP
BZPОPMAX
BZPOPMIN
ZADD
ZCARD
ZCOUNT
ZDIFF
ZDIFFSTORE
ZINCRBY
ZINTER
ZINTERCARD
ZINTERSTORE
ZLEXCOUNT
ZMPOP
ZMSCORE
ZPOPMAX
ZPOPMIN
ZRANDMEMBER
ZRANGE
ZRANGEBVLEX
ZRANGEBYSCORE
ZRANGE
ZRANGEBYLEX
ZRANGEBYSCORE
ZRANGESTORE
ZRANK
ZREM
ZREMRANGEBYLEX
ZREMRANGEBYRANK
ZREMRANGEBYSCORE
ZREVRANGE
ZREVRANGEBYLEX
ZREVRANGEBYSCORE
ZREVRANK
ZSCAN
ZSCORE
ZUNION
ZUNIONSTORE
2.2.6 HyperLogLog

基数统计常用命令:

命名 描述
PFADD
PFCOUNT
PFDEBUG
PFMERGE
PFSELFTEST
2.2.7 Bitmap

位图常用命令:

命名 描述
BITCOUNT
BITFIELD
BITFIELD RO
BITOP
BITPOS
GETBIT
SETBIT
2.2.8 Geospatial

地理空间常用命令:

命名 描述
GEOADD
GEODIST
GEOHASH
GEOPOS
GEORADIUS
GEORADIUS RO
GEORADIUSBYMEMBER
GEORADIUSBYMEMBER RO
GEOSEARCH
GEOSEARCHSTORE
2.2.9 Stream

流常用命令:

命名 描述
XACK
XADD
XAUTOCLAIM
XCLAIM
XDEL
XGROUP CREATE
XGROUP CREATECONSUMER
XGROUP DELCONSUMER
XGROUP DESTROY
XGROUP SETID
XINFO CONSUMERS
XINFO GROUPS
XINFO STREAM
XLEN
XPENDING
XRANGE
XREAD
XREADGROUP
XREVRANGE
XSETID
XTRIM

2.3 Management

2.3.1 Connection management

连接管理命令:

命名 描述
AUTH
CLIENT CACHING
CLIENT GETNAME
CLIENT GETREDIR
CLIENT ID
CLIENT INFO
CLIENT KILL
CLIENT LIST
CLIENT NO-EVICT
CLIENT NO-TOUCH
CLIENT PAUSE
CLIENT REPLY
CLIENT SETINFO
CLIENT SETNAME
CLIENT TRACKING
CLIENT TRACKINGINFO
CLIENT UNBLOCK
CLIENT UNPAUSE
ECHO
HELLO
PING
QUIT
RESET
SELECT
2.3.2 Cluster management

集群管理命令:

命名 描述
ASKING
CLUSTER ADDSLOTS
CLUSTER ADDSLOTSRANGE
CLUSTER BUMPEPOCH
CLUSTER COUNT-FAILURE
REPORTS
CLUSTER COUNTKEYSINSLOT
CLUSTER DELSLOTS
CLUSTER DELSLOTSRANGE
CLUSTER FAILOVER
CLUSTER FLUSHSLOTS
CLUSTER FORGET
CLUSTER GETKEYSINSLOT
CLUSTER INFO
CLUSTER KEYSLOT
CLUSTER LINKS
CLUSTER MEET
CLUSTER MYID
CLUSTER MVSHARDID
CLUSTER NODES
CLUSTER REPLICAS
CLUSTER NODES
CLUSTER REPLICAS
CLUSTER REPLICATE
CLUSTER RESET
CLUSTER SAVECONFIG
CLUSTER SET-CONFIG-EPOCH
CLUSTER SETSLOT
CLUSTER SHARDS
CLUSTER SLAVES
CLUSTER SLOTS
READONLY
READWRITE
2.3.3 Server managment

服务端管理命令:

命名 描述
ACL CAT
ACL DELUSER
ACL DRYRUN
ACL GENPASS
ACL GETUSER
ACL LIST
ACL LOAD
ACL LOG
ACL SAVE
ACL SETUSER
ACL USERS
ACL WHOAMI
BGREWRITEAOF
BGSAVE
COMMAND
COMMAND COUNT
COMMAND DOCS
COMMAND GETKEVS
COMMAND GETKEYSANDFLAGS
COMMAND INFO
COMMAND LIST
COMMAND LIST
CONFIG GET
CONFIG RESETSTAT
CONFIG REWRITE
CONFIG SET
DBSIZE
FAILOVER
FLUSHALL
FLUSHDB
INFO
LASTSAVE
LATENCY DOCTOR
LATENCY GRAPH
LATENCY HISTOGRAM
LATENCY HISTORY
LATENCY LATEST
LATENCY RESET
LOLWUT
MEMORY DOCTOR
MEMORY MALLOC-STATS
MEMORY PURGE
MEMORY STATS
MEMORY USAGE
MEMORY USAGE
MODULE LIST
MODULE LOAD
MODULE LOADEX
MODULE UNLOAD
MONITOR
PSYNC
REPLCONF
REPLICAOF
RESTORE-ASKING
ROLE
SAVE
SHUTDOWN
SLAVEOF
SLOWLOG GET
SLOWLOG LEN
SLOWLOG RESET
SWAPDB
SYNC
TIME

2.4 Pub/Sub

发布订阅命令:

命名 描述
PSUBSCRIBE
PUBLISH
PUBSUB CHANNELS
PUBSUB NUMPAT
PUBSUB NUMSUB
PUBSUB SHARDCHANNELS
PUBSUB SHARDNUMSUB
PUNSUBSCRIBE
SPUBLISH
SSUBSCRIBE
SUBSCRIBE
SUNSUBSCRIBE
UNSUBSCRIBE

2.5 Scripting and functions

脚本及函数命令:

命名 描述
EVAL
EVAL_RO
EVALSHA
EVALSHA_RO
FCALL
FCALL_RO
FUNCTION DELETE
FUNCTION DUMP
FUNCTION FLUSH
FUNCTION KILL
FUNCTION LIST
FUNCTION LOAD
FUNCTION RESTORE
FUNCTION STATS
SCRIPT DEBUG
SCRIPT FLUSH
SCRIPT KILL
SCRIPT LOAD

2.6 Transactions

事务命令:

命名 描述
DISCARD
EXEC
MULTI
UNWATCH
WATCH

2.7 Stack

2.7.1 Bloom filter

布隆过滤器命令:

命名 描述
BF.ADD
BF.CARD
BF.EXISTS
BF.INFO
BF.INSERT
BF.LOADCHUNK
BF.MADD
BF.MEXISTS
BF.RESERVE
BF.SCANDUMP
2.7.2 Cuckoo filter
命名 描述
CF.ADD
CF.ADDNX
CF.COUNT
CF.DEL
CF.EXISTS
CF.INFO
CF.INSERT
CF.INSERTNX
CF.LOADCHUNK
CF.MEXISTS
CF.RESERVE
CF.SCANDUMP
2.7.3 Count-min sketch
命名 描述
CMS.INCRBY
CMS. INFO
CMS.INITBYDIM
CMS.INITBVPROB
CMS .MERGE
CMS.QUERY
2.7.4 JSON
命名 描述
JSON.ARRAPPEND
JSON.ARRINDEX
JSON.ARRINSERT
JSON.ARRLEN
JSON.ARRPOP
JSON.ARRTRIM
JSON.CLEAR
JSON.DEBUG
JSON.DEBUG MEMORV
JSON.DEL
JSON.FORGET
JSON.GET
JSON.MERGE
JSON.MGET
JSON.MSET
JSON.NUMINCRBY
JSON.NUMMULTBV
JSON.OBJKEYS
JSON.OBJLEN
JSON.RESP
JSON.SET

JSON.STRAPPEND
JSON.STRLEN
JSON.TOGGLE
JSON.TYPE

2.7.5 Search and query
命名 描述
FT._LIST
FT .AGGREGATE
FT.ALIASADD
FT .ALIASDEL
FT.ALIASUPDATE
FT .ALTER
FT.CONFIG GET
FT.CONFIG SET
FT .CREATE
FT.CURSOR DEL
FT.CURSOR READ
FT .DICTADD
FT .DICTDEL
FT .DICTDUMP
FT .DROPINDEX
FT .EXPLAIN
FT.EXPLAINCLI
FT .INFO
FT.PROFILE
FT .SEARCH
FT .SPELLCHECK
FT .SYNDUMP
FT . SYNUPDATE
FT.TAGVALS
2.7.6 Triggers and functions
命名 描述
TFCALL
TFCALLASYNC
TFUNCTION DELETE
TFUNCTION LIST
TFUNCTION LOAD
2.7.7 Auto-suggest
命名 描述
FT.SUGADD
FT.SUGDEL
FT.SUGGET
FT.SUGLEN
2.7.8 T-digest
命名 描述
TDIGEST.ADD
TDIGEST .BYRANK
TDIGEST .BYREVRANK
TDIGEST .CDF
TDIGEST.CREATE
TDIGEST.INFO
TDIGEST .MAX
TDIGEST .MERGE
TDIGEST .MIN
TDIGEST.QUANTILE
TDIGEST .RANK
TDIGEST.RESET
TDIGEST .REVRANK
TDIGEST.TRIMMED MEAN
2.7.9 Time series
命名 描述
TS.ADD
TS.ALTER
TS.CREATE
TS.CREATERULE
TS.DECRBY
TS.DEL
TS.DELETERULE
TS.GET
TS.INCRBY
TS.INFO
TS.MADD
TS.MGET
TS.MRANGE
TS.MREVRANGE
TS.QUERYINDEX
TS.RANGE
TS.REVRANGE
2.7.10 Top-k
命名 描述
TOPK.ADD
TOPK.COUNT
TOPK.INCRBY
TOPK.INFO
TOPK.LIST
TOPK.QUERY
TOPK.RESERVE

相关推荐

  1. 【openGL4.x手册09】转换反馈

    2024-06-18 14:22:07       18 阅读
  2. 【openGL4.x手册07】几何着色器

    2024-06-18 14:22:07       15 阅读
  3. 【openGL4.x手册13】色彩混合blend

    2024-06-18 14:22:07       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-18 14:22:07       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-18 14:22:07       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-18 14:22:07       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-18 14:22:07       18 阅读

热门阅读

  1. 【C/C++】工业级别的日志文件轮转策略原理

    2024-06-18 14:22:07       7 阅读
  2. VO 和 DO

    2024-06-18 14:22:07       8 阅读
  3. 8D错漏件分析改进

    2024-06-18 14:22:07       5 阅读
  4. 编程连接主板:深入探索与实践的技术之旅

    2024-06-18 14:22:07       7 阅读
  5. 程序员做电子书产品变现的复盘(5)

    2024-06-18 14:22:07       5 阅读
  6. Halcon C++ XLD 数据写入图片

    2024-06-18 14:22:07       8 阅读
  7. webpack 自动清理 dist 文件夹的两种实现方法

    2024-06-18 14:22:07       6 阅读
  8. 生产环境下部署微调的10条戒律

    2024-06-18 14:22:07       6 阅读