跳至主要內容

redis-cli命令

程序员李某某大约 2 分钟

redis-cli命令

登录

redis-cli -h localhost -p 6379 -a 1234  #登录		-p -h可省略 
#-a也可省略
redis-cli
AUTH 1234  #进入交互后输入密码
ping #测试心跳 返回pong正常

select 0 #选择库
help @genneric  #查通用组命令帮助文档
help set #查具体命令文档

通用

#在生产环境下,不推荐使用keys 命令,因为这个命令在key过多的情况下,效率不高
keys 		#查看符合模板的所有key  支持通配符 key *

del  		#删除某个key 支持删除多个
exists 	#是否存在
expire	#设置有效期  
ttl			#查剩余有效期	未设置返回-1,到期返回-2

String

  • string、int、float都是String类型,底层都是byte[]存储,但是编码方式不同
  • key的层级结构:项目名:业务名:类型:id
set key value
get key
mset k1 v1 k2 v2
mget k1 k2

incr key     				#自增
decy key						#自减 可用自定义自增步长代替
incrby key num			#自定义自增步长
incrbyfloat key num #自定义浮点型自增步长

setnx key value  		#不存在增加
setex key time value#含有效期增加

set botuer:user:1 '{"id":1, "name": "Jack", "age": 21}'

Hash

  • 类似HashMap
hset key field value
hmset key f1 v1 f2 v2

hget key field
hmget key f1 f2
hgetall key							#获取key的所有字段和值
hkeys key								#获取key的字段
hincrby key field				#自定义自增步长
hsetnx key field value	#不存在增加

List

  • 类似LinkedList,双向链表,支持双向检索
    • 有序
    • 可重复
    • 插入、删除速度快
    • 查询速度一般
  • 多用于存储有序数据,如点赞列表、评论列表
lpush key element...  #可插入多个
rpush key element...  		
lrange key star end		#按索引查,0开始

#查,并移除
lpop key [几个]				#可取出多个
rpop key [几个]
blpop key timeout			#取一个,设置超时时间,临时阻塞

Set

  • 类似HashSet
    • 无序
    • 不重复
    • 查找速度快
    • 支持交、并、差
sadd key member...		#添加一个或多个
srem key member...		#移除一个或多个
scard key							#查个数
smembers key					#查全部
sismember key member	#判断是否含有某元素

sinter k1 k2					#交集
sdiff k1 k2						#差集
sunion k1 k2					#并集

SortedSet

  • 类似TreeSet,但底层差异很大,SortedSet“排序Set”,是对每个元素score属性排序,默认生序
    • 排序
    • 不重复
    • 查询速度快
  • 多用于排行榜
zadd key s1 m1 s2 m2
zrem key member
zscore key member			#查分
zcard key							#查个数

zrank key member			#查排名(默认升序)
zcount key min max		#查一定范围score的个数
zrange key min max		#查指定排名的元素
zrangebyscore key min max #查一定范围score的元素
zrev...								#降序查

zincrby key 步长 menber#让指定score自增

zinter k1 k2
zdiff k1 k2
zunion k1 k2

其他

  • 位图 ( Bitmaps ) --- 签到
  • 基数统计 ( HyperLogLogs ) --- 统计
  • 地理坐标(Geo) --- 附近
  • 流(Streams) --- 队列
上次编辑于:
贡献者: 李元昊