一、通用指令
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、