redis主从复制
配置主从复制
./redis-server 命令,如果后面不附加参数,它是按默认配置来启动 redis 服务的,其实它后面还可以附加一个配置文件路径的参数。在redis根目录下有一个redis.conf文件,可以直接使用这个文件来配置启动server
./redis-server ./redis.conf
windows的对应就是
redis-server.exe redis.windows.conf
启动服务器
master
slave-1
slave-2
启动客户端
配置主从关系
master 的地址是127.0.0.1 端口是 6379
在两个slave客户端下面执行
SLAVEOF 127.0.0.1 6379
可以看的一些log信息
master
slave -01
slave -02
测试
在master上面设置一些测试数值
set weixuan hello
set testkey testvalue
在slave端测试,看能不能拿到数据
slave -01 的日志
slave -02 的日志
原理
- 当你设置了主从关系后,slave 在第一次连接或者重新连接 master 时,slave 都会发送一条同步指令给 master ;
- master 接到指令后,开始启动后台保存进程保存数据,接着收集所有的数据修改指令
- 后台保存完了,master 就把这份数据发送给 slave,slave 先把数据保存到磁盘,然后把它加载到内存中,master 接着就把收集的数据修改指令一行一行的发给 slave,slave 接收到之后重新执行该指令,这样就实现了数据同步。
- slave 在与 master 失去联系后,自动的重新连接。如果 master 收到了多个 slave 的同步请求,它会执行单个后台保存来为所有的 slave 服务
Error
在slave获取数据的过程中出现了磁盘空间不足的错误,但是没有找到原因,也没有其他报错信息。
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-23 01:20:52