Redis实现主从复制
一、克隆3台虚拟机
右击要克隆的虚拟机,选择管理-再次选择克隆(克隆虚拟机时一定要将虚拟机进行关闭再进行克隆操作)
选择后一直点击下一步,新克隆的虚拟机的名字可以自己进行重新取。
二、生成新的mack地址
点击生成后再点击确定即可。Redis3虚拟机也按该操作执行一次。
二、Redis主从复制概念
概述
1、redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。
2、通过redis的复制功能可以很好的实现数据库的读写分离,提高服务器的负载能力。主数据库主要进行写操作,而从数据库负责读操作。
主从复制过程:见下图
过程:
1:当一个从数据库启动时,会向主数据库发送sync命令,
2:主数据库接收到sync命令后会开始在后台保存快照(执行rdb操作),并将保存期间接收到的命令缓存起来
3:当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。
4:从数据库收到后,会载入快照文件并执行收到的缓存的命令。
三、搭建集群
注意:
1、搭建集群时需要使用root账号进行登录
2、关闭所有的防火墙 service iptables stop
3、配置主从复制时,要设定的主服务器不用配置,只需配置从服务器的配置即可
4、目前我的redis3台的ip地址分别是:192.168.1.69 192.168.1.81 192.168.1.230
1、修改redis.conf
进入要设定从服务器中的redis的bin目录,找到redis.conf配置文件
cd /usr/local/redis/etc
修改slave从redis中的 redis.conf文件
vi redis.conf
搜索 replicaof <masterip> <masterport> 设置主的redisip和端口后,在配置文件中搜索: /masterip 则能找到该对应配置
修改配置如下:
slaveof 192.168.1.69 6379
配置主服务器的密码
masterauth root--- 主redis服务器配置了密码,则需要配置
本人没有设置密码,所以只配置了主服务器的ip和端口
配置一台从服务器则已配置完成,另外一台配置跟以上步骤相同
三、测试
启动主redis服务器
./redis-server /usr/local/redis/etc/redis.conf
./redis-cli
注意:先启动主服务器,再启动从服务器,若从服务器启动出错,则将主服务器的redis.conf配置文件复制覆盖从服务器的配置文件,并修改该配置文件的从服务器ip和端口。启动成功后输入info命令查看
。
在主服务器中输入:set test1 123
在从服务器中输入:get test1 出现的结果为:123则代表主从复制成功。
以上为本篇redis实现主从复制的内容,本内容主要来源于余胜军授讲:http://www.mayikt.com/,若对以上博客内容有什么疑问的,欢迎各位博友进行评论探讨,转发请将本文中涉及的链接一并进行转发。本人博客地址:https://www.cnblogs.com/chenyuanbo/,欢迎关注探讨,技术提升在于沟通交流