1.启动redis客户端:
redis-cli -a 123456
2.选择其中的一个数据库(我这里是默认16个数据库,从下标0开始)
select 0
接下来相关命令操作
获取所有key
keys *
设置key的过期时间(10秒)
EXPIRE k2 10
获取key为a的失效时间(-1永不过期,-2已经过期)
ttl a
清空当前数据库
flushdb
清空所有库
FLUSHALL
判断key是否存在
EXISTS k1
判断key的类型
type k1
删除k键
del k1
3.操作String
set添加一条String类型数据
get获取一条String类型的数据
mset添加多条String类型的数据
mget获取多条String类型的数据
incr (key)默认自增1 decr(key)默认自减1
incrby(key)(数字) 加(数字) decrby(key)(数字) 减(数字)
incrbyfloat(key)(浮点)
append(key)(字符串)追加字符串
getrange(key) 数字1 数字2 截取从数字1到数字2(从零开始)
4.hash相关的操作指令
Hash是一个键值的集合。redis的hash是一个String的key和value的映射表,hash特别适合存储对象。
hmet author:01 name a sex b 设置key为author:01值为name和sex
hgetall author:01获取author:01的所有值
hget author:01 name获取author:01的name属性
hdel author:01 name 删除author:01的name属性
HEXISTS author:01 sex 判断author:01 sex属性是否存在,存在为1
HKEYS author:01获取author:01的所有属性
hincrby author:01 age 1将 age的值+1(跟字符串类似)
5.List相关操作指令:
存储多个有序的字符串。比如twitter的关注列表,粉丝列表都可以用list结构来实现。
rpush a c b a 从右侧插入key为a,值分别为 c b a
lpush a c b a从左侧插入
lrange a 0 -1列出a的所有值
llen a 返回a列表的所有值
lpop a 删除左侧第一个值
rpop a 删除右侧第一个值
6.set相关操作指令:
set不允许有重复值,并且无序。可以用在计算共同兴趣或者标签等
sadd user a b c 添加user集合 值为a b c
exists user 判断集合是否存在
smembers user 获取user集合所有元素
srem user a 删除user集合中的a值
scard user 返回集合个数
sinter user1 user2 计算出俩集合的交集
7.Zset相关的操作指令:
有序集合,不允许有重复值,可以用在排行榜、点赞数等
zadd mm 200 a 100 b 给mm集合添加a分数为200,b分数为100
zrange mm 0 -1 withscores 根据分数从低到高
zadd mm nx 1 aa 添加新元素到集合
zadd mm incr 1 aa 修改aa的分数 +1
或者
zincrby mm 1 aa
zcard mm 集合元素个数
zrem mm aa 删除aa
zscore mm b 获取b的分数
zrank mm b 获取b的索引号(从0开始)
ZREMRANGEBYRANK mm 0 1删除mm集合中0 -1的元素