Redis必会知识点总结

Redis是一个开源(BSD许可)的,是单线程的,基于内存操作,Redis将所有的数据全部放到内存中,它可以用作数据库、缓存和消息中间件。cpu不是redis性能瓶颈,他的瓶颈是根据机器的内存和网络带宽。

一、Redis的启动和关闭

1、redis-server config/redis.conf    启动redis服务端

2、redis-cli -p 6379   启动redis客户端

3、 shutdown   关闭redis的服务

4、exit      退出redis服务

5、 ps -ef | grep redis  查看reids的进程

二、Redis常用的命令

1、set  在该数据库下设置值

2、get 在该数据库下获取值

3、keys  查看数据库所有的key

4、del 在该数据库下删除值

5、select    切换到1号数据库 redis默认由16个库(0~15号). 且默认使用的是0号库)

6、dbsize  查看当前数据库的存在的数据个数

7、flushall  清空全部数据库

8、flushdb  清空当前数据库

9、exists  判断当前key是否存在

10、 move 在本数据库中将key移除  1代表当前的数据库

11、move 在本数据库中将key移除到其他数据库  7代表将要移到的数据库

12、expire  设置当前key的过期时间   3代表3秒后过期,过期后再次查询就没有了

13、ttl   (time to live) 查看key的剩余过期时间

14、type  查看当前key的类型

 

三、Redis常用的5大数据类型

1、String字符串

1)append name hello  将hello追加到key为name的value值上,并返回当前value值的长度

2)append sex 1  在追加value值的时候,如果当前key不存在的时候,自动创建key,并给value赋值

3)strlen name    获取当前key的字符串长度

4)incr  key   当前key的值自增1

5)decr key   当前key的值自减1

 6)incrby key 10  当前key的value值每次增加10,步长为10

7)decrby key 4 当前key的value值每次减少4,步长为4

8)getrange   key  0   5   查找范围值,查找当前key的从0到5的value值

9)getrange  key 0 -1  获取当前key的全部的字符串,和get一样

10)setrange key 1 w  将当前key的vaule值下标为1的值替换成w

11)setex(set with expire) key 30 hello  设置过期时间,设置key的值为hello,过期时间为30秒

12)setnx(set if not exist)key  mmm  当前key不存在再设置,如果设置成功会返回1,如果不存在会返回0,value值不会改变。在分布式锁中会常常使用。是一个原子性的操作,要么一起成功,要么一起失败。

13)mset  key1 value1 key2 value2  一次设置多个值  

14)mget  key1  key2   一次设置多个值  

15)set  user:1  {name:zhangsan,age:22} 设置对一个对象 key为user:1 ,value值为json字符来保存一个对象

16)mset user:2:name lisi user:2:age 23  设置对一个对象 key为对象的多个user:{id}:{filed}

17)getset db redis  先设置一个值然后在获取这个值  如果值不存在就返回nil,get时可以获取到刚刚set的value值

18)getset db mongodb  先设置一个值然后在获取这个值  如果值存在就返回之前的value值,get时可以获取到刚刚set的value值

使用场景:string中的value出来字符串还可以是数字,一般我们用来计数器、统计多单位的数量、粉丝数、对象缓冲存储。

2、List列表

1)lpush   将一个值或者多个值插入到表头部(左),并返回当前列表的长度

2)lrange  获取列表中的值,也可以获取区间内的具体值

3)rpush   将一个值或者多个值插入到表尾部(右),并返回当前列表的长度

4)lpop list   移除list从头部开始的第一个元素,返回移除的元素

5)rpop list   移除list从尾部开始的第一个元素,返回移除的元素

6)llen list  返回当前list的长度

7)lindex list 0  获取list中下标为0的值

l

8)lrem  key  count  value    移除指定的值,也可以移除多个指定的值 

9)ltrim  key  start stop  通过下标截取指定的长度,这个list已经被改变了,截断了只剩下的元素

10)rpoplpush list list1    移除列表的最后一个元素,将他移动到新的列表中

11) exists  key   判断这个列表是否存在,存在返回1,不存在返回0

12)lset   key  index value   将列表中指定下标的值替换为另外一个值,更新操作

 

持续学习,持续更新,欢迎关注!

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页