一、通用指令

  1、打印出所有key:keys * 

  2、打印出所有以he开头的key:keys he*

  3、打印出所有以he开头,第三个字母属于h到l的范围的key:keys he[h-l]

  4、三位长度,以he开头,?表示任意一位:keys he?

  5、keys命令一般不在生产环境中使用,生产环境key很多,时间复杂度为o(n),用scan命令

  6、计算key的总数:dbsize --- redis内置了计数器,插入删除值该计数器会更改,所以可以在生产环境使用,时间复杂度是o(1)

  7、某key是否存在:exists 某key --- 存在返回1,不存在返回0

  8、删除某key:del 某key --- 删除成功返回1,key不存在返回0

  9、设置某key的过期时间3秒:expire 某key 3

  10、查看某key的剩余有效时间:ttl 某key

  11、设置某key不过期:persist 某key

  12、查看某key的数据类型:type 某key

  13、查看内存,cpu,主从相关信息:info

  14、查看正在连接的会话窗:client list

  15、关闭某个查看正在连接的会话窗:client kill ip:端口 

  16、清空所有:flushall

  17、仅清空当前库:flushdb

  18、选择某个库(0~15):select 数字

  19、开启日志记录模式(挂起,自动记录日志):monitor

二、string指令

  1、写入:

    ①无则新增,有则更新:set name lqz

    ②只能新增:setnx name lqz

    ③同上:set name lqz nx

    ④只能更新:set name lqz xx

  2、读出:get name

  3、删除:del name

  4、对age这个key的value值自增1:incr age

  5、对age这个key的value值自减1:decr age

  6、对age这个key的value值自加10:incrby age 10

  7、对age这个key的value值自减10:decrby age 10  

  8、redis是单线程无竞争,天然适合做计数器,统计网站访问量,多个服务分布式生成无重复编号

  9、批量写入:mset key1 value1 key2 value2 key3 value3

  10、批量读出:mget key1 key2 key3

  11、多次get和mget的区别:(多次网络时间+多次数据操作时间) vs (一次网络时间+多次数据操作时间)

  12、设置新值并返回旧值:getset name lqznb

  13、将value拼接到旧的value的后面:append name 666

  14、计算字符串长度(汉字不是1):strlen name

  15、为age自增3.5,负值表示自减:increbyfloat age 3.5

  16、从字符串指定index开始修改value:setrange key index value

  17、读取字符串指定index范围value:getrange key start_index end_index

  18、可以将mysql的dict数据转为json字符串存入做缓存

三、hash指令

  1、写入:hset key field value

  2、读取:hget key field

  3、删除:hdel key field

  4、判断某字段是否存在:hexists key field

  5、计算字段数量:hlen key 

  6、批量写入:hmset key field1 value1 field2 value2 field3 value3

  7、批量读出:hmget key field1 field2 field3

  8、读出所有字段及对应值:hgetall key

  9、读出所有字段:hkeys key

  10、读出所有值:hvals key

  11、某字段自增1:hincrby key field count 

  12、统计网站某个用户某类页面的访问量:hincrby user:1:info pageview count

四、list指令

  1、从右侧插入:rpush key value1 value2 value3

  2、从左侧插入:lpush key value1 value2 value3

  3、从某值的前或后插入:linsert key before|after value newValue

  4、从右侧弹出一个值:rpop key

  5、从左侧弹出一个值:lpop key

  6、删除指定个位的某相同值:lrem key count value

    ①count为正数,从左侧开始删除count个

    ②count为负数,从右侧开始删除count个

    ③count为0,删除所有该值

  7、截留指定范围(左闭右闭):ltrim key start end

  8、读取指定范围(左闭右闭):lrange key start end

    从头到尾:lrange listkey 1 -1

  9、读取指定索引的值:lindex key index

  10、计算长度:llen key

  11、修改指定索引的值:lset key index newValue

五、set指令

  1、添加值,若值已存在,添加无效:sadd key element

  2、删除某值:srem key element

  3、计算大小:scard key

  4、判断某值是否属于该集合:sismember key element

  5、从集合中随机读出若干值:srandmember key count

  6、

 

posted on 2020-09-04 16:36  焚音留香  阅读(284)  评论(0编辑  收藏  举报