Redis 最全命令总结

Redis是一个开源的,基于内存的数据结构存储系统,它支持多种数据结构,包括字符串、列表、哈希表、集合、有序集合等。

字符串命令

  1. SET key value:设置key的值为value。
  2. GET key:获取key的值。
  3. MGET key1 [key2..]:一次获取多个key的值。
  4. SETEX key seconds value:设置key的值为value,并设置过期时间为seconds秒。
  5. PSETEX key milliseconds value:设置key的值为value,并设置过期时间为milliseconds毫秒。
  6. SETNX key value:当key不存在时,设置key的值为value。
  7. MSET key1 value1 [key2 value2..]:一次设置多个key的值。
  8. MSETNX key1 value1 [key2 value2..]:一次设置多个key的值,当所有key都不存在时才执行。
  9. APPEND key value:将value追加到key的值末尾。
  10. STRLEN key:获取key的值的长度。
  11. INCR key:将key的值增加1。
  12. INCRBY key increment:将key的值增加increment。
  13. INCRBYFLOAT key increment:将key的值增加increment(支持浮点数)。
  14. DECR key:将key的值减少1。
  15. DECRBY key decrement:将key的值减少decrement。
  16. GETSET key value:设置key的值为value,并返回key原来的值。

列表命令

  1. LPUSH key value1 [value2..]:将value1、value2等依次插入到key对应的列表的左侧。
  2. RPUSH key value1 [value2..]:将value1、value2等依次插入到key对应的列表的右侧。
  3. LPOP key:删除并返回key对应的列表的左侧的第一个元素。
  4. RPOP key:删除并返回key对应的列表的右侧的第一个元素。
  5. LLEN key:获取key对应的列表的长度。
  6. LRANGE key start stop:获取key对应的列表中下标从start到stop的元素。
  7. LINDEX key index:获取key对应的列表中下标为index的元素。
  8. LSET key index value:将key对应的列表中下标为index的元素设置为value。
  9. LINSERT key BEFORE|AFTER pivot value:在key对应的列表中,找到pivot元素,并在其前/后插入value。
  10. LREM key count value:在key对应的列表中,从左至右删除count个值为value的元素。
  11. BLPOP key1 [key2..] timeout:阻塞地从key1、key2等对应的列表中取出左侧第一个元素,如果没有元素则一直等待,直到timeout秒后返回。
  12. RPOPLPUSH source destination:将source对应的列表的右侧第一个元素弹出,并插入到destination对应的列表的左侧。
  13. BRPOPLPUSH source destination timeout:阻塞地将source对应的列表的右侧第一个元素弹出,并插入到destination对应的列表的左侧,如果source列表没有元素则一直等待,直到timeout秒后返回。

哈希表命令

  1. HSET key field value:设置key对应的哈希表中field的值为value。
  2. HGET key field:获取key对应的哈希表中field的值。
  3. HMSET key field1 value1 [field2 value2..]:一次设置多个field的值。
  4. HMGET key field1 [field2..]:一次获取多个field的值。
  5. HDEL key field1 [field2..]:删除key对应的哈希表中field1、field2等对应的值。
  6. HEXISTS key field:判断key对应的哈希表中是否存在field。
  7. HGETALL key:获取key对应的哈希表中所有的field和对应的value。
  8. HINCRBY key field increment:将key对应的哈希表中field的值增加increment。
  9. HINCRBYFLOAT key field increment:将key对应的哈希表中field的值增加increment(支持浮点数)。
  10. HKEYS key:获取key对应的哈希表中所有的field。
  11. HLEN key:获取key对应的哈希表中field的数量。
  12. HSETNX key field value:当key对应的哈希表中field不存在时,设置field的值为value。
  13. HVALS key:获取key对应的哈希表中所有的value。

集合命令

  1. SADD key member1 [member2..]:将member1、member2等依次添加到key对应的集合中。
  2. SCARD key:获取key对应的集合的元素数量。
  3. SISMEMBER key member:判断member是否在key对应的集合中。
  4. SMEMBERS key:获取key对应的集合中所有的元素。
  5. SPOP key:随机地从key对应的集合中删除并返回一个元素。
  6. SRANDMEMBER key [count]:随机地从key对应的集合中获取count个元素,当count为正数时,元素不重复;当count为负数时,元素可能重复。
  7. SREM key member1 [member2..]:删除key对应的集合中member1、member2等对应的元素。
  8. SDIFF key1 [key2..]:获取key1对应的集合中不在key2对应的集合中的元素。
  9. SDIFFSTORE destination key1 [key2..]:将key1对应的集合中不在key2对应的集合中的元素保存到destination对应的集合中。
  10. SINTER key1 [key2..]:获取key1对应的集合和key2对应的集合的交集。
  11. SINTERSTORE destination key1 [key2..]:将key1对应的集合和key2对应的集合的交集保存到destination对应的集合中。
  12. SUNION key1 [key2..]:获取key1对应的集合和key2对应的集合的并集。
  13. SUNIONSTORE destination key1 [key2..]:将key1对应的集合和key2对应的集合的并集保存到destination对应的集合中。
  14. SMOVE source destination member:将source对应的集合中的member移动到destination对应的集合中。
  15. SSCAN key cursor [MATCH pattern] [COUNT count]:使用游标分批次地遍历key对应的集合中的元素。

有序集合命令

  1. ZADD key score1 member1 [score2 member2..]:将member1、member2等依次添加到key对应的有序集合中,并分别设置它们的分值为score1、score2等。
  2. ZCARD key:获取key对应的有序集合的元素数量。
  3. ZCOUNT key min max:获取key对应的有序集合中分值在[min, max]区间内的元素数量。
  4. ZINCRBY key increment member:将member在key对应的有序集合中的分值增加increment。
  5. ZRANGE key start stop [WITHSCORES]:获取key对应的有序集合中排名在[start, stop]之间的元素(按分值从小到大排序)。
  6. ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]:获取key对应的有序集合中分值在[min, max]区间内的元素(按分值从小到大排序)。
  7. ZREM key member1 [member2..]:删除key对应的有序集合中member1、member2等对应的元素。
  8. ZREMRANGEBYRANK key start stop:删除key对应的有序集合中排名在[start, stop]之间的元素。
  9. ZREMRANGEBYSCORE key min max:删除key对应的有序集合中分值在[min, max]区间内的元素。
  10. ZSCORE key member:获取key对应的有序集合中member的分值。
  11. ZINTERSTORE destination numkeys key1 [key2..] [WEIGHTS weight1 [weight2..]] [AGGREGATE SUM|MIN|MAX]:求key1、key2等对应的有序集合的交集,并保存到destination对应的有序集合中。
  12. ZUNIONSTORE destination numkeys key1 [key2..] [WEIGHTS weight1 [weight2..]] [AGGREGATE SUM|MIN|MAX]:求key1、key2等对应的有序集合的并集,并保存到destination对应的有序集合中。
  13. ZLEXCOUNT key min max:获取key对应的有序集合中成员名称在[min, max]之间的数量。
  14. ZRANGEBYLEX key min max [LIMIT offset count]:获取key对应的有序集合中成员名称在[min, max]之间的元素。
  15. ZREMRANGEBYLEX key min max:删除key对应的有序集合中成员名称在[min, max]之间的元素。
  16. ZSCAN key cursor [MATCH pattern] [COUNT count]:使用游标分批次地遍历key对应的有序集合中的元素。

地理位置命令

  1. GEOADD key longitude latitude member [longitude latitude member..]:将member的经纬度添加到key对应的地理位置集合中。
  2. GEOPOS key member [member..]:获取key对应的地理位置集合中member的经纬度。
  3. GEODIST key member1 member2 [unit]:获取key对应的地理位置集合中member1和member2之间的距离。
  4. GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count]:获取key对应的地理位置集合中距离指定经纬度不超过radius的元素。
  5. GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count]:获取key对应的地理位置集合中距离指定member不超过radius的元素。
  6. GEOHASH key member [member..]:获取key对应的地理位置集合中member的geoh

事务命令

  1. MULTI:标记事务块的开始。
  2. EXEC:执行所有在MULTI和EXEC之间的命令。
  3. DISCARD:取消事务,清空所有已入队但未执行的命令。
  4. WATCH key [key..]:监视key,当key被其他客户端修改时,事务将被打断。
  5. UNWATCH:取消对所有key的监视。

发布与订阅命令

  1. SUBSCRIBE channel [channel..]:订阅一个或多个频道。
  2. UNSUBSCRIBE [channel..]:取消订阅一个或多个频道。
  3. PUBLISH channel message:将消息发布到指定的频道。
  4. PSUBSCRIBE pattern [pattern..]:订阅与给定模式相匹配的一个或多个频道。
  5. PUNSUBSCRIBE [pattern..]:取消订阅与给定模式相匹配的一个或多个频道。
  6. PUBSUB subcommand [argument [argument..]]:查看订阅与发布系统状态。

Lua脚本命令

  1. EVAL script numkeys key [key..] arg [arg..]:使用Lua脚本执行命令。
  2. EVALSHA sha1 numkeys key [key..] arg [arg..]:使用缓存的Lua脚本执行命令。
  3. SCRIPT LOAD script:将Lua脚本编译成缓存脚本。

连接命令

  1. AUTH password:验证密码。
  2. ECHO message:输出给定的字符串。
  3. PING [message]:检查Redis服务器是否运行。
  4. QUIT:关闭与当前客户端的连接。
  5. SELECT index:切换到指定的数据库。

安全命令

  1. ACL LOAD:从指定文件中加载ACL文件。
  2. ACL SAVE:将当前ACL配置保存到硬盘上的ACL文件中。
  3. ACL LIST:列出当前所有ACL用户。
  4. ACL USERS:列出指定的ACL用户的详细信息。
  5. ACL GETUSER username:获取指定用户的ACL。
  6. ACL SETUSER username [rule [rule..]]:修改指定用户的ACL。
  7. ACL DELUSER username [username..]:删除一个或多个ACL用户。
  8. ACL CAT [category]:列出指定的ACL规则分类或者所有规则。
  9. ACL GENPASS [bits]:生成一个随机密码并打印出来。
  10. ACL WHOAMI:返回当前连接的用户名。

集群命令

  1. CLUSTER ADDSLOTS slot [slot..]:为指定节点添加一个或多个槽。
  2. CLUSTER COUNTKEYSINSLOT slot:返回槽中的键数。
  3. CLUSTER DELSLOTS slot [slot..]:从指定节点中删除一个或多个槽。
  4. CLUSTER INFO:获取集群信息。
  5. CLUSTER KEYSLOT key:返回键属于的槽。
  6. CLUSTER MEET ip port:将节点添加到集群中。
  7. CLUSTER NODES:列出集群中的所有节点信息。
  8. CLUSTER REPLICATE node-id:将节点设置为指定节点的从节点。
  9. CLUSTER RESET [hard|soft]:重置集群。
  10. CLUSTER SET-CONFIG-EPOCH config-epoch:设置配置纪元。

Sentinel命令

  1. SENTINEL get-master-addr-by-name master-name:获取指定主节点的IP地址和端口号。
  2. SENTINEL masters:列出所有被Sentinel监控的主节点。
  3. SENTINEL master master-name:获取指定主节点的信息。
  4. SENTINEL slaves master-name:列出指定主节点的所有从节点。
  5. SENTINEL reset pattern [pattern..]:重置Sentinel状态。
  6. SENTINEL failover master-name:强制进行故障转移。

内部命令

  1. COMMAND:显示所有Redis命令。
  2. CONFIG GET parameter:获取指定配置参数的值。
  3. CONFIG SET parameter value:设置指定配置参数的值。
  4. CONFIG RESETSTAT:重置Redis统计数据。
  5. DBSIZE:返回当前数据库的key数量。
  6. DEBUG OBJECT key:获取指定键的调试信息。
  7. FLUSHALL [ASYNC]:清空所有数据库。
  8. FLUSHDB [ASYNC]:清空当前数据库。
  9. INFO [section]:返回Redis服务器的信息。
  10. LASTSAVE:返回最后一次成功将数据保存到磁盘上的时间。
  11. MEMORY DOCTOR:输出Redis内存问题报告。
  12. MEMORY HELP:列出Redis内存命令。
  13. MEMORY MALLOC-STATS:返回Redis内存分配器的统计信息。
  14. MEMORY PURGE:在禁用RDB或AOF持久性时使用,手动清除不必要的内存页。
  15. MEMORY STATS:返回Redis内存消耗的统计信息。
  16. MEMORY USAGE key [SAMPLES count]:返回键所占用的内存。
  17. ROLE:返回Redis服务器的角色。
  18. SAVE:将数据同步保存到磁盘上。
  19. SHUTDOWN [NOSAVE] [SAVE]:关闭Redis服务器。
  20. SLAVEOF host port:将当前Redis实例设置为给定Redis服务器的从服务器。
  21. SLOWLOG subcommand [argument]:管理Redis慢查询日志
  22. SYNC:用于复制操作,等待所有已接收数据的从服务器进行同步。
  23. TIME:返回当前服务器时间。

原文始发于微信公众号(师小师):Redis 最全命令总结

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/226344.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!