redis数据库
redis
redis 是一个高性能的 key-value 数据库。 redis 的出现,很大程度补偿了memcached 这类 keyvalue 存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP 客户端,使用很方便。Redis 的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入一个 appendonly file(aof)里面(这称为“全持久化模式”)。
=======================================================================================================================================
环境:rhel6.5
虚拟机:172.25.41.1(master)
172.25.41.2
172.25.41.3
需要的包:redis-3.0.2.tar.gz
安装:
master上:
#tar zxf redis-3.0.2.tar.gz
#ls
#yum install gcc -y
#cd /redis-3.0.2
#make
#make install
======================================================================================================================================
slave上:操作与master相同
查看端口是否开启:
=======================================================================================================================================
配置:
master上
master上的主配置文件不需要改动
sentinel.conf作如下改动
sentinel monitor mymaster 172.25.41.1 6379 2 指定master是谁,用的哪个端口,
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 60000
sentinel config-epoch mymaster 1
:wq
#scp sentinel.conf 172.25.41.2:/etc/redis/ ->将相同文件给slave端也发一份
===================================================================================================================================
slave端:
#vim /etc/redis/6379.conf
slaveof 后面跟的是主机ip,在从机的主配置文件给出,告诉它从哪个机子上同步数据。这一行只在从机上有,当主机挂掉之后,从slave变为master时,这一行就会消失。
sentinel.conf 文件是刚才从主机传过来的。不需要做改动
=============================================================================================================================
在主机或者从机上输入 #redis-server /etc/redis/sentinel.conf --sentinel ->查看日志
日志打入后台的操作:
#/etc/redis/setinel.conf
=====================================================================================================================
可以看到主机master状态良好。
==============================================================================================================================
测试:现在我们来试一下如果主机挂掉从机是否会顶替位置
首先确保主从机上的redis数据库完好可用:
然后输入 shutdown ,可以看到断开连接了
然后查看下master是谁,可以看到转移到了172.25.41.2上。
如何让172.25.41.1重新成为master呢?首先它必须以从机的身份加入这个组里,就是说它要先成为172.25.41.2的从机,也就是在主配置文件里加上 slaveof 172.25.41.2 6379 这一行,然后重启redis,这时候当172.25.41.2挂掉时,172.25.41.1就可以接替它的身份成为主机。