“关系数据库一般会使用一个主服务器(master)向多个从服务器(slave)发送更新,并使用从服务器来处理全部读请求。Redis也采用了一样的方法来实现本身的复制特性,并将其用做扩展性能的一种手段”redis
Excerpt From: [美] Josiah L. Carlson. “Redis实战.” iBooks.数据库
安装新一点版本的redis 使用redis-server : chris lea这个源ubuntu
$ sudo apt-add-repository ppa:chris-lea/redis-server
安装服务器
$ sudo apt-get update $ sudo apt-get install redis-server
能够ping下 redis-cli ping
返回 Pong
安装成功性能
测试环境两台机器测试
10.211.55.6 (master)spa
10.211.55.7 (slave).net
“但开启从服务器所必须的选项只有slaveof一个。若是用户在启动Redis服务器的时候,指定了一个包含slaveof host port选项的配置文件,那么Redis服务器将根据该选项给定的IP地址和端口号来链接主服务器。对于一个正在运行的Redis服务器,用户能够经过发送SLAVEOF no one命令来让服务器终止复制操做,再也不接受主服务器的数据更新;也能够经过发送SLAVEOF host port命令来让服务器开始复制一个新的主服务器。”code
Excerpt From: [美] Josiah L. Carlson. “Redis实战.” iBooks. server
配置很简单,就两种方式配置方式
在slave服务器用redis-cli执行slaveof命令
写在配置文件slaveof host port
配置文件好处重启配置不失效
在 10.211.55.7
上执行 命令设置
$ redis-cli 127.0.0.1:6379> SLAVEOF 10.211.55.6 6379 OK
使用info 命令查看Replication部分状态
# Replication role:slave master_host:10.211.55.6 master_port:6379 master_link_status:up
slave已经链接上master服务器了
role:master connected_slaves:1 slave0:ip=10.211.55.7,port=6379,state=online,offset=98,lag=1
若是发现没同步,检查bind配置
bind 10.211.55.6 127.0.0.1
另外 说是在redis.conf 里配置
slaveof <masterip> <masterport>
从服务器在进行同步时,会清空本身的全部数据
不支持主主复制,可是从服务器能够链接从服务器复制数据