redis 学习总结

一、windows 下安装使用

1.下载:从github 下载

2.安装:redis-server.exe --service-install redis.windows.conf

3.启动:redis-server.exe --service-start

4.停止:redis-server.exe --service-stop

5.卸载:redis-server.exe --service-uninstall

二、linux 下安装使用

1.下载:http://download.redis.io/releases/

2.解压:tar zxf abc.tar.gz -C /usr/local/src/

3.编译:进入目录 执行 make

4.复制 /usr/local/src/redis-6.0.4/src 目录下的redeis-server 以及redis-cli 到/usr/local/redis/ 目录下

5.复制 /usr/local/src/redis-6.0.4 目录下的redis.conf 到 /usr/local/redis/ 目录下

6.修改配置文件redis.conf    参数 :daemonize yes  表示后台启动
启动 ./redis-server redis.conf
7.下载客户端:https://pan.baidu.com/s/1QvjG30IV-MJFPTF-oV9nVw 8.安装客户端并启动 连接服务 ./redis-cli -p 6378 指定端口启动 9.设置可远程访问 修改配置文件 参数 bind 127.0.0.1 172.20.2.102

其他配置如图:

三、数据持久化

1、rdb持久化配置:save 900 1 标识900s 有一个增删改操作就保存

rdb 按照规则同步到磁盘,重启后又从磁盘写入内存

2、aof 持久化配置:默认不开启,修改 appendonly no 为yes 同步规则配置:  appendfsync everysec(每秒同步一次)always (每次操作都同步)

aof 是将操作的命令都写入日志文件,重启时又重新执行这些操作命令

四、常用操作命令

1、清除所有数据:flushall

2、清除当前数据库数据:flushdb

3、选择数据库:select 1 为选择第一个数据库

4、del key 删除key

5、exists key  是否存在key

6、expire key 为key 设置一个过期时间

7、ttl key  查询key剩余的时间

8、type key 查询key 的数据类型

9、keys 模糊查找 符合指定模式的key

10、mset a1 v a2 v2 a3 v3 批量设置

11、incr  key  计数器,执行一次+1

12、incrby key number 指定步数加

13、decr key 减一

14、decrby key number 减去指定步数

 链表list

15、lpush key value 插入队列头部

16、lpop key 将队列头部值移除

17、blpop key 5 阻塞将队列头部值移除,超过时间后结束 相当于后进后出

18、rpush key value 插入队列尾部

19、rpop key 将队列尾部值移除

20、brpop key 5 阻塞将队列尾部值移除,超过时间后结束,相当于后进先出

21、lrange key start stop 从头到尾列出值

集合set

22、sadd key v1 v2 v3 向集合添加成员

23、smembers key 查看集合中的成员

24、sinter key1 key 2 求集合的交集

25、sunion key1 key2 求集合的并集

26、sdiff key1 key2 求集合的差集,key1中独有

hash 哈希 对象

27、hset 10001 name zhangsan 设置id=10001 的name=张三

 28、hmset 10001 name zhangsan age 14 sex 男  批量设置对象属性

29、hget 10001 name  获取对象属性

30 hmget 10001 nage age sex 批量获取属性

五、redis 主从复制

1、搭建一主三从服务
2
、实现原理:主redis 实现增删改操作,从redis 实现查询操作,从redis 定时从主redis 拉去数据 3、优点:实现读写分离、负载均衡,提高编发量 ;数据备份到从服务器 4、缺点“:难以扩容,知识复制,数据没有强一致性 5、具体实现(1)从、usr/local/redis/下分别拷贝三分 redis-server redis-cli redis.conf 分别作为三个从服务器       (2)分别修改三分配置文件redis.conf ,端口号分别为6381,6382,6383       (3)分别修改三分配置文件 redis.conf ,修改 replicaof 127.0.0.1 6379 为主redis 的ip和端口       (4)配置完成后可以配置从redis 只读

六、redis 集群

1、实现原理:为了解决redis 写入或更新频繁超过15万的qps,ridis 规定有16384个哈希槽,存入数据时就计算key的crc16算法并取模16384,得出的结果属于那些哈希槽范围就存入那个redis服务(每个redis在创建集群时就规定了一个hash 范围)

2、实现原理图

3、具体实现配置

(1)拷贝三分redis.conf redis-server 到不同目录

(2)分别修改配置文件,端口号和 cluster-enabled yes  以及 cluster-config-file nodes-7000.conf

(3)分别启动三台服务器 ,查看 ps -A |grep redis-server

(4)将三台服务器创建集群环境,redis-cli --cluster create 127.0.0.1:7000  127.0.0.1:7001 127.0.0.1:7002

(5) 按照集群方式启动任意服务器 ./redis-cli -c -p 7000

(6) 总结:存放时按照key计算后属于那台服务器而存入那台服务器,获取时再计算ket 后再指定服务器获取key,集群环境自动切换

原文地址:https://www.cnblogs.com/lufei33180/p/13059944.html