Home >Database >Mysql Tutorial >在多台服务器上简单实现Redis的数据主从复制

在多台服务器上简单实现Redis的数据主从复制

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-07 17:21:53826browse

Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务

Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。下面我演示下怎样在多台服务器上进行Redis数据主从复制。这里我假设有两台服务器,一台是Windows操作系统(局域网IP:192.168.3.82),一台是Linux操作系统(局域网IP:192.168.3.90),在两个操作系统都安装redis,Windows操作系统使用cygwin工具进行安装,命令为:

$ tar xzf redis-2.2.2.tar.gz

$ cd redis-2.2.2

$ make

可以通过"make test”命令判断是否安装成功。

这里我使用1个master以及2个slave(master在Windows下,一个slave在Windows下,一个slave在Linux下),基本流程是:

1. 在Windows服务器上创建两个目录,,Demo1,Demo2,其中Demo1用来存放Master服务,Demo2用来存放Slave服务,

在Master服务中的配置文件修改:

bind 192.168.3.82

在Slave服务中的配置文件修改:

port 6381(服务端口号要分开)

bind 192.168.3.82

slaveof 192.168.3.82 6379 (设置master的Host以及Port)

2. 在Linux服务器上创建一个目录,Demo,Demo存放Slave服务,在服务中的配置文件修改:

bind 192.168.3.90

slaveof 192.168.3.82 6379(设置master的Host以及Port)

这样就完成了所有的配置。

3. 现在运行这3个服务,通过命令:

./redis-server redis.conf

来启动redis服务。

注意到,当我启动master,然后启动一个slave的时候,可以发现slave上:

会发送一个SYNC请求,从Master上面进行相应,而且它支持自动重连,即当master掉线的情况下,它会处于等待请求的状态。

而Master上:

能够接受Slave的应答,并且开始持久化操作,说明在Slave每次去连接Master的时候,都会去持久化磁盘。

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:Oracle job interval规则Next article: mongodb numa问题