redis配置主从复制

来源:互联网 发布:郑州大学网络远程教育 编辑:程序博客网 时间:2024/05/17 07:26

redis主从复制


配置主从复制

./redis-server 命令,如果后面不附加参数,它是按默认配置来启动 redis 服务的,其实它后面还可以附加一个配置文件路径的参数。在redis根目录下有一个redis.conf文件,可以直接使用这个文件来配置启动server

./redis-server ./redis.conf

windows的对应就是

    redis-server.exe redis.windows.conf

启动一个服务器

启动服务器

master
master

slave-1
slave-1

slave-2
slave-2

启动客户端

slave-cli

slave-cli

配置主从关系

master 的地址是127.0.0.1 端口是 6379
在两个slave客户端下面执行

     SLAVEOF 127.0.0.1 6379

配置主从关系

配置主从关系

可以看的一些log信息
master

log

slave -01

slave-log

slave -02

slave-log

测试

在master上面设置一些测试数值

    set weixuan hello    set testkey testvalue

在slave端测试,看能不能拿到数据

slave -01 的日志

测试数据

slave -02 的日志

测试数据

原理

  1. 当你设置了主从关系后,slave 在第一次连接或者重新连接 master 时,slave 都会发送一条同步指令给 master ;
  2. master 接到指令后,开始启动后台保存进程保存数据,接着收集所有的数据修改指令
  3. 后台保存完了,master 就把这份数据发送给 slave,slave 先把数据保存到磁盘,然后把它加载到内存中,master 接着就把收集的数据修改指令一行一行的发给 slave,slave 接收到之后重新执行该指令,这样就实现了数据同步。
  4. slave 在与 master 失去联系后,自动的重新连接。如果 master 收到了多个 slave 的同步请求,它会执行单个后台保存来为所有的 slave 服务

Error

在slave获取数据的过程中出现了磁盘空间不足的错误,但是没有找到原因,也没有其他报错信息。

Error

0 0