这里写目录标题
主从模式:
- 使用一个Redis实例作为主机,其余的作为备份机。主机和备份机的数据完全一致,主机支持数据的写入和读取等各项操作,而从机则只支持与主机数据的同步和读取。也就是说,客户端可以将数据写入到主机,由主机自动将数据的写入操作同步到从机。主从模式很好的解决了数据备份问题,并且由于主从服务数据几乎是一致的,因而可以将写入数据的命令发送给主机执行,而读取数据的命令发送给不同的从机执行,从而达到读写分离的目的。
Redis主从模式的部署配置:
(1)从https://redis.io/下载redis安装包,通过ftp工具上传至虚拟机中
(2)执行 tar -xzvf redis-xxx.tar.gz
解压文件:x参数:解压文件;z参数:通过gzip指令处理备份文件;v参数:显示执行过程;f参数:指定备份文件
(3)cd redis-xxx
(4)make命令进行安装
使用默认的makefile文件进行编译。
(5)安装完毕后,将redis-server、redis-cli、redis.conf文件复制到新建的目录中:/usr/loca/bin(此目录可以自定义,首先查看自己的在/usr/local/bin目录下是否存在这些命令,如果没有可以从自己安装redis目录的src下cp至/us/local/bin目录下)
(6)复制三份redis.conf 并分别命名
redis-master.conf
redis-slave1.conf
redis-slave2.conf
(7) 首先配置redis-master.conf文件
vi redis-master.conf
修改:
bind 192.168.31.193 (为虚拟机ip地址)
Port 6381
daemonize yes
dbfilename dump6381.rdb 或者修改dir
Requirepass master 密码(若无密码可不修改)
修改redis-salve1.conf
注意:在redis5.*以上配置replicaof。
bind 192.168.31.193
Port 6382 (由于是使用一台虚拟机进行模仿,所以要保证端口号不同)
daemonize yes
dbfilename dump6382.rdb 或者修改dir
Slaveof 192.168.31.193 6381(这里的端口号为主服务器的端口)
或者
Replicaof 192.168.31.193 6381
修改redis-salve2.conf
bind 192.168.31.193
Port 6383
daemonize yes
dbfilename dump6383.rdb 或者修改dir
Slaveof 192.168.31.193 6381
或者
Replicaof 192.168.31.193 6381
(8) 启动测试
分别启动主服务器与从服务器
执行:
启动服务
./redis-server redis-master.conf
./redis-server redis-salve1.conf
./redis-server redis-salve2.conf
使用redis自带的客户端进行测试
./redis-cli -h xxxx(ip地址) -p(主服务器端口号)
set name xxx
exit
./redis-cli -h xxxx(ip地址) -p(从服务器1端口号)
get name
exit
./redis-cli -h xxxx(ip地址) -p(从服务器2端口号)
get name
exit
使主服务器宕机
可以看出当主服务器宕机时,从服务器还是只可以读,不可以写。