一、redis简介
Redis 是C语言开发的一个开源高性能键值对的内存数据库,可以用来做数据库、缓存、消息中间件等场景,是一种NoSQL(not-only sql,非关系型数据库)的数据库
二、Redis特点
-
优秀的性能,数据是存储在内存中,读写速度非常快,可支持并发10W QPS
-
单线程但进程,是线程安全的,采用IO 多路复用制
-
可作为分布式锁
-
支持五种数据类型
-
支持数据持久化到磁盘
-
可以作为消息中间件使用,支持消息发布及订阅
三、redis的安装
tar zxf (相关的redis文件)
启动redis服务
修改配置文件
查看一下redis端口
redis基础命令
config get 查看配置
select 1 选择数据库
flushdb 清空当前数据库
move key 1 移动key
del key 删除
rename oldkey newkey 改名
expire key 10 设置过期时间
persist key 设置持久化
keys user* 查询
exists key 判断是否存在
redis主从复制
首先我们要把server1上配置好的redis文件复制到server7上
在server7上 进行 make install
修改配置文件
在redis-cli 里面先写下一个名字
然后再另一台主机上测试
试验成功!!!!
redis高可用
1. 什么是高可用?
Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:
监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。
提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。
自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。
在二号机上进入 cd /usr/local/bin/ 把相关文件复制上去
在2号机把redis相关文件传到3号机上
在3号机进行redis的运行
让三号机跟一号机也设置主从复制
2.配置Sentinel
把server1上修改的文件同步到server2和server3上
sever1上启动哨兵
server2上启动哨兵
server3上启动哨兵
在server1上进行shutdown
观察server2 server3上变化
从图中可以看出已经把server2选择为master
我们再把server1上的redis启动
我们发现server1已经由master变成slave了
实验成功!!!!