一、redis支持简单且易用的主从复制(master-slave replication)功能,该功能可让从服务器(slave server)成为主服务器(master server)的精确复制品。redis
二、如下是关于redis复制功能的几个重要方面
1)redis使用异步复制。
2)一个主服务器能够有多个从服务器。
3)不只主服务器能够有从服务器,从服务器也能够有本身的从服务器,多个从服务器之间能够构成一个网状结构
4)复制功能不会阻塞主服务器。
5)复制功能也不会阻塞从服务器。
6)复制功能能够单纯地用于数据冗余(data redundancy),也能够经过让多个从服务器处理只读命令请求来提高扩展性(scalability)。
7)能够经过复制功能来让主服务器免于执行持久化操做。安全
三、相关配置
1)配置一个从服务器很是简单,只要在配置文件中增长如下的这一行就能够了:服务器
2)另一种方法是调用slaveof命令,输入主服务器的IP和端口,而后同步就会开始:网络
3)启动从服务器,进入客户端,经过info replication命令能够查看redis服务的信息异步
此时看到master_link_status值为down,出现这个问题的缘由有不少。ui
重启主机redis服务。
此时经过命令查看从服务器状态能够发现master_link_status值为upscala
四、从服务器只读
1)从redis2.6开始,从服务器支持只读模式,而且该模式为从服务器的默认模式。
2)只读模式由redis.conf文件中的slave-read-only选项控制,也能够经过CONFIG SET命令来开启或关闭这个模式。(不建议)3d
五、从服务器配置
1)若是主服务器经过requirepass选项设置了密码,那么为了让从服务器的同步操做能够顺利进行,也必须为从服务器进行相应的身份验证设置。
2)config set masterauth <password>或者masterauth <password>server
六、主服务器其余配置
1)从redis2.8开始,为了保证数据的安全性,能够经过配置,让主服务器只在有至少N个当前已链接从服务器的状况下,才执行写命令。
2)用户能够经过配置,指定网络延迟的最大值min-slaves-max-lag,以及执行写操做所需的至少从服务器数量min-slaves-to-write。blog