Redis命令大全

全局命令 字符串类型相关命令: 哈希类型相关命令 列表类型相关命令 集合类型相关命令 有序集合类型相关命令 单…

全局命令

1、查看所有键:keys *
2、键总数:dbsize
3、检查键是否存在:exists key
4、删除键:del key [key ...]
5、键过期:expire key seconds
6、键的剩余过期时间:ttl key
7、键的数据结构类型:type key

字符串类型相关命令:

1、设置值:set key value [ex seconds] [px milliseconds] [nx|xx]		
2、setex key seconds value
3、setnx key value
4、获取值:get key
5、批量设置值:mset key value [key value ...]
6、批量获取值:mget key [key ...]
7、计数:incr key
8、自减:decr key
9、自增指定数字:incrby key increment
10、自减指定数字:decrby key decrement
11、自增浮点数:incrbyfloat key increment
12、向字符串尾部追加值:append key value
13、字符串长度:strlen key
14、设置并返回原值:getset key value
15、设置指定位置的字符:setrange key offeset value
16、获取部分字符串:getrange key start end

哈希类型相关命令

1、设置值:hset key field value
2、设置值:hsetnx key field value
3、获取值:hget key field
4、删除field:hdel key field [field ...]
5、计算field个数:hlen key
6、批量设置field-value:hmget key field [field ...]
7、批量获取field-value:hmset key field value [field value ...]
8、判断field是否存在:hexists key field
9、获取所有field:hkeys key
10、获取所有value:hvals key
11、获取所有的field-value:hgetall key
12、自增指定数字:hincrby key field increment
13、自增浮点数:hincrbyfloat key field increment
14、计算value的字符串长度:hstrlen key field

列表类型相关命令

1、从右向左插入元素:rpush key value [value ...]
2、从左向右插入元素:lpush key value [value ...]
3、向某个元素前或者后插入元素:linsert key before|after pivot value
4、获取指定范围内的元素列表:lrange key start end
5、从左到右获取元素:lrange key 0 -1
6、获取列表指定索引下标的元素:lindex key index
7、获取列表最后一个元素:lindex key -1
8、获取列表长度:llen key
9、删除最左侧元素:lpop key
10、删除最右侧元素:rpop key
11、删除指定元素:lrem key count value
12、按照索引范围修剪列表:ltrim key start end
13、修改指定索引下标的元素:lset key index newValue
14、阻塞式删除最左侧元素:blpop key [key ...] timeout
15、阻塞式删除最右侧元素:brpop key [key ...] timeout

集合类型相关命令

1、添加元素:sadd key element [element ...]
2、删除元素:srem key element [element ...]
3、计算元素个数:scard key
4、判断元素是否在集合中:sismember key element
5、随机从集合返回指定个数元素:srandmember key [count]
6、从集合随机删除元素:spop key [count]
7、获取所有元素:smembers key
8、求多个集合的交集:sinter key [key ...]
9、求多个集合的并集:suinon key [key ...]
10、求多个集合的差集:sdiff key [key ...]
11、将交集、并集、差集的结果保存
	sinterstore destination key [key ...]
	suionstore destination key [key ...]
	sdiffstore destination key [key ...]

有序集合类型相关命令

1、添加成员:zadd key score member [score member ...]
2、计算成员个数:zcard key
3、计算某个成员的分数:zscore key member
4、计算成员从分数从低到高的排名:zrank key member
5、计算成员从分数从高到低的排名:zrevrank key member
6、删除成员:zrem key member [member ...]
7、增加成员的分数:zincrby key increment member
8、返回指定排名范围的成员:
zrange key start end [withscores]
zrevrange key start end [withscores]		
9、返回指定分数范围的成员:
zrangebyscore key min max [withscores] [limit offset count]
zrevrangebyscore key max min [withscores] [limit offset count]
10、返回指定分数范围成员个数:zcount key min max
11、删除指定排名内的升序元素:zremrangebyrank key start end
12、删除指定分数范围的成员:zremrangebyscore key min max
13、集合交集:zinterstore destination numkeys key [key ...]
 [weights weight [weight ...]] 
[aggregate sum|min|max]
	destination:交集计算结果保存到这个键。
	numkeys:需要做交集计算键的个数。
	key[key...]:需要做交集计算的键。
	weights weight[weight...]:
每个键的权重,在做交集计算时,每个键中的每个member会将自己分数乘以这个权重,
每个键的权重默认是1。
aggregate sum|min|max:计算成员交集后,
分值可以按照sum(和)、min(最小值)、max(最大值)做汇总,默认值是sum。
14、集合并集:zunionstore destination numkeys key [key ...]
 [weights weight [weight ...]] 
[aggregate sum|min|max]

单键管理通用命令

1、键重命名:rename key newkey
2、随机返回一个键:randomkey
3、键在seconds秒后过期:expire key seconds
4、键在秒级时间戳timestamp后过期:expireat key timestamp
5、查询键的剩余过期时间(毫秒级):pttl key
6、键在milliseconds毫秒后过期:pexpire key milliseconds
7、键在毫秒级时间戳timestamp后过期:pexpireat key milliseconds-timestamp
	在使用Redis相关过期命令时,需要注意以下几点。
	1)如果expire key的键不存在,返回结果为0:
	2)如果过期时间为负值,键会立即被删除,犹如使用del命令一样
	3)对于字符串类型键,执行set命令会去掉过期时间
	清除键的过期时间:persist key
	4)Redis不支持二级数据结构(例如哈希、列表)内部元素的过期功能,
例如不能对列表类型的一个元素做过期时间设置。
	5)setex命令作为set+expire的组合,不但是原子执行,
同时减少了一次网络通讯的时间。

迁移键相关命令

1、在Redis内部进行数据迁移:move key db
2、在不同的Redis实例之间进行数据迁移:dump+restore
dump key  ——dump命令会将键值序列化,格式采用的是RDB格式。
restore key ttl value	——在目标Redis上,
restore命令将上面序列化的值进行复原,其中ttl参数代表过期时间,如果ttl=0代表没有过期时间。
3、在Redis实例间进行数据迁移:migrate host port key|"" 
destination-db timeout [copy] [replace] [keys key [key ...]]
migrate命令整个过程是原子执行的,不需要在多个Redis实例上开启客户端的,
只需要在源Redis上执行migrate命令即可。
host:目标Redis的IP地址。
port:目标Redis的端口。
key|"":在Redis3.0.6版本之前,migrate只支持迁移一个键,
所以此处是要迁移的键,但Redis3.0.6版本之后支持迁移多个键,
如果当前需要迁移多个键,此处为空字符串""。
destination-db:目标Redis的数据库索引,例如要迁移到0号数据库,这里就写0。
timeout:迁移的超时时间(单位为毫秒)。
[copy]:如果添加此选项,迁移后并不删除源键。
[replace]:如果添加此选项,
migrate不管目标Redis是否存在该键都会正常迁移进行数据覆盖。
[keys key[key...]]:迁移多个键,例如要迁移key1、key2、key3,
此处填写“keys key1 key2 key3”。

遍历键

1、全量遍历键:keys pattern
2、渐进式遍历:scan cursor [match pattern] [count number]	

数据库管理命令

1、切换数据库:select dbIndex	——select 0 操作将切换到第一个数据库
2、清除当前数据库:flushdb
3、清除所有数据库:flushall

慢查询:

1、获取慢查询日志:slowlog get [n]
2、获取慢查询日志列表当前的长度:slowlog len
3、慢查询日志重置:slowlog reset

事务相关

1、事务开始:multi
2、事务结束:exec
3、停止事务:discard
4、判断key没有被其他客户端修改过:watch key

Bitmaps相关

1、设置值:setbit key offset value  ——设置键的第offset个位的值(从0算起)
2、获取值:gitbit key offset
3、获取Bitmaps指定范围值为1的个数:bitcount key [start][end]
4、Bitmaps间的运算:bitop op destkey key[key....]
5、计算Bitmaps中第一个值为targetBit的偏移量:bitpos key targetBit [start] [end]

HyperLogLog相关

1、向HyperLogLog添加元素:pfadd key element [element …]
2、计算一个或多个HyperLogLog的独立总数:pfcount key [key …]
3、合并:pfmerge destkey sourcekey [sourcekey ...]

发布订阅相关

1、发布消息:publish channel message
2、订阅消息:subscribe channel [channel ...]
3、取消订阅:unsubscribe [channel [channel ...]]
4、按照模式订阅和取消订阅:
	psubscribe pattern [pattern...]
	punsubscribe [pattern [pattern ...]]
5、查看活跃的频道:pubsub channels [pattern]
6、查看频道订阅数:pubsub numsub [channel ...]
7、查看模式订阅数:pubsub numpat

GEO相关

1、增加地理位置信息:
geoadd key longitude latitude member [longitude latitude member...]
2、获取地理位置信息:geopos key member [member ...]
3、获取两个地理位置的距离:geodist key member1 member2 [unit]
4、获取指定位置范围内的地理信息位置集合:
georadius key longitude latitude radiusm|km|ft|mi 
[withcoord] [withdist] [withhash] [COUNT count] [asc|desc]
[store key] [storedist key]
georadiusbymember key member radiusm|km|ft|mi [withcoord]
 [withdist] [withhash] [COUNT count] [asc|desc] [store key] 
[storedist key]
georadius和georadiusbymember两个命令的作用是一样的,
都是以一个地理位置为中心算出指定半径内的其他地理信息位置,
不同的是georadius命令的中心位置给出了具体的经纬度,
georadiusbymember只需给出成员即可。其中radiusm|km|ft|mi是必需参数,指定了半径(带单位)
·withcoord:返回结果中包含经纬度。
·withdist:返回结果中包含离中心节点位置的距离。
·withhash:返回结果中包含geohash,有关geohash后面介绍。
·COUNT count:指定返回结果的数量。
·asc|desc:返回结果按照离中心节点的距离做升序或者降序。
·store key:将返回结果的地理位置信息保存到指定键。
·storedist key:将返回结果离中心节点的距离保存到指定键。
5、将二维经纬度转换为一维字符串:geohash key member [member ...]
6、删除地理位置信息:zrem key member
本文来自网络,不代表陈小黑博客立场,转载请注明出处:https://www.chenxiaohei.net/archives/420

作者: admin

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

联系我们

在线咨询: QQ交谈

邮箱: admin@chenxiaohei.net

如果您对网站有什么建议或者意见,欢迎您通过以上联系方式联系我们~
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部