redis学习笔记(五)--主从复制

基本概念

参与复制的Redis实例划分为主节点(master)和从节点(slave)。Redis根据拓扑复杂性能够分为如下三种:一主一从、一主多从、树状主从结构。
Redis的一个master能够有多个slave,一个slave只能有一个master。数据的流向是单向的,老是从master到slave。
Redis的一个master能够有多个slave,一个slave只能有一个master。数据的流向是单向的,老是从master到slave。
Tips:slave从节点进行复制的时候会清除原有数据。redis

配置

命令方式

复制

假如如今有127.0.0.1:9000127.0.0.1:9001两台redis-server。vim

clipboard.png

要让127.0.0.1:9001复制127.0.0.1:9000。即127.0.0.1:9000为主节点,
127.0.0.1:9001为从节点:spa

$ redis-cli -h 127.0.0.1 -p 9001
127.0.0.1:9001 > slaveof 127.0.0.1 9000

127.0.0.1:9000上:code

127.0.0.1:9000 > set key hello

clipboard.png

127.0.0.1:9001上:server

127.0.0.1:9001 > get key

clipboard.png

能够看到复制成功了。ip

若是想一启动就开始复制:get

$ redis-server xxx.conf --slaveof {masterHost} {masterPort}

配置文件

$ vim redis-9001.conf
daemonize yes
port 9001
dir "/opt/redis/data"
logfile "9001.file"
slaveof 127.0.0.1 9000
slave-read-only yes     # 只读方式
$ redis-server redis-9001.conf
$ redis-cli -h 127.0.0.1 -p 9001
127.0.0.1:9001> get key

clipboard.png

能够看到复制成功了。it

取消复制

从节点断开复制后不会抛弃原有数据,只是没法再获取主节点上的数据变化。
在从节点上:ast

> slaveof no one
相关文章
相关标签/搜索