Redis的主从复制
1.什么是主从复制
redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。
2.配置主从复制
主从关系,所以至少需要两台服务器上安装redis,一台做主,一台做从,而我们也只需要配置从redis就可以了,将主redis信息配置进去就行了
但是我的redis是最新的版本不一样,是这样的,配置都是一样
我们现在用RedisDesktopManager连接我们的两台的服务器
主Redis信息
从Redis信息
我们现在可以看到这两台redis的主从关系已经建立了,可以看到,这两台redis的键和值都是一样的,是因为从redis会主动将主redis所有信息全都读取复制过来,但是有一点,这里的主redis可以读可以写,但是从redis只能读。这样就实现了读写分离,很简单。(原理)
过程:
1:当一个从数据库启动时,会向主数据库发送sync命令,
2:主数据库接收到sync命令后会开始在后台保存快照(执行rdb操作),并将保存期间接收到的命令缓存起来
3:当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。
4:从数据库收到后,会载入快照文件并执行收到的缓存的命令。