主从概念:
一个主(master)可以拥有多个从(slave),一个从又可以拥有多个从,如此下去,可以形成多级服务器集群架构。主用来写数据,从用来读数据,实现读写分离,一般来说网站读写的比例接近10:1。
配置主:
查看当前主机的ip地址:192.168.3.222
输入vim redis.conf,修改redis配置文件绑定的ip地址,然后按下esc,冒号x 保存退出。
配置从:
复制当前路径的下redis.donf文件为slave.conf
使用命令sudo slave.conf 打开从的配置文件进行修改端口号,由于ip地址都是一样的,因此区别主从的标志就是端口号了,两个不同的端口号就是两个不同的redis了。例如将端口号改为6378:
但是仅此仍然是两个独立的redis,还没有建立主从的关系,此刻按下esc进入编辑模式,输入/slaveof回车
将281行的注释打开,添加上ip地址和主的端口号:
点击esc,输入冒号x 保存退出,此时主从的关系就建立了。
输入ps -ux |grep redis 查看redis-conf是否启动。如果启动可以kill -9 端口号杀死。
启动主服务:
sudo redis-server redis.conf
再启动从服务:
sudo redis-server slave.con
然后输入redis-cli -h 192.168.3.222 info Replication回车
测试:
启动主服务器:redis-cli -h 192.168.3.222 不指定端口号默认为6379
新开一个终端,再启动从服务器:redis-cli -h 192.168.3.222 -p 6378
然后在主服务器中设置name为zhangsan,可以看到读写都ok
然后在从服务器中去读数据没问题,但是写数据时是不允许的: