Redis工作模式主要有单机模式、主从模式(slave)、哨兵模式(sentinel)、集群模式(cluster)这四种,本文主要讲解一下主从模式的部署方式。

  我是windows单机进行的这套搭建操作,linux系统下搭建也是同样的,要点都是对配置文件进行一些更改。redis大家可以直接去官网https://redis.io/download下载,linux也可根据页面上的指示输入相应的指令下载。

  首先准备master的配置文件(redis.windows-service.conf),主要有port(端口号,默认是6379)、requirepass(密码)、dbfilename(数据持久化文件)、logfile(日志文件),这里我就不更改端口号和不设置密码了,所以直接使用默认的配置就可以,master-slave模式下,作为master的redis是不需要额外配置的。接下来进去redis目录,执行redis-server.exe redis.windows-service.conf即可,然后到windows服务列表(cmd窗体输入services.msc回车进入)中开启redis服务即可。回到redis目录,双击redis-cli.exe,出现以下界面则成功连接上了端口号为6379的redis服务。

  接下来配置第一台slave的redis。新建redis-6380目录,并复制配置文件redis.windows-service.conf和redis-server.exe 到redis-6380目录下。打开redis.windows-service.conf进行编辑,更改端口号为6380,slave规则添加一条slaveof 127.0.0.1 6379。完整的配置如下:

port 6380

dbfilename dump.rdb

logfile "server_log.txt"

slaveof 127.0.0.1 6379

cluster-enabled no

其中cluster-enabled no配置默认是 #cluster-enabled yes,可以不用更改,如果去掉屏蔽就必须更改为no,因为redis的cluster模式和slave模式是互斥的。slaveof 127.0.0.1 6379这里的值就是maste模式redia的ip和端口号,如果master设置了密码,则还需要添加“masterauth masterpassword”一项配置。然后命令行窗体进入redis-6380目录,执行redis-server.exe redis.windows-service.conf --service-name Redis6380,转到windows服务列表启动名为redis6380的服务就可以了,到现在作为slave模式运行的redis服务就正常运行了。

  打开redis-6380目录下的server_log_6380.txt文件可以看到以下界面,注意红色框部分,表示当前slave节点已经成功从master节点同步数据了:

  至此,一个master-slave模式的redis系统就部署完成,并且成功运行了。接下来我们测试一下在master节点写入的数据,能否正常同步到slave节点里面;

  在刚才的redis-cli.exe界面输入 set test-slave 'test slave of port 6380',成功执行如下:

回到slave节点的客户端连接,我用的是命令行窗体,进入redis-6380目录,执行redis-cli.exe -h 127.0.0.1 -p 6380命令,回车,然后输入 get test-slave,得到如下界面的结果:

这就是刚才在master几点存入的test-slave键值的数据,由此运行在6380端口的slave模式redis已经能成功同步到6379端口的master模式下的数据了。

  redis主从模式下,master模式的redis是不需要额外配置的,和单机模式下的配置一样,只需要更改slave模式的配置,添加slaveof masterip masterport,如果开启了cluster模式,必须要关闭,同时,如果master设置了访问密码,则slave需要配置masterauth masterpassword 一项。

Redis四大模式之主从配置的更多相关文章

  1. Redis 哨兵模式实现主从故障互切换

    200 ? "200px" : this.width)!important;} --> 介绍 Redis Sentinel 是一个分布式系统, 你可以在一个架构中运行多个 S ...

  2. Redis集群_主从配置

    链接地址http://www.2cto.com/database/201502/377069.html 收藏备用. Redis主从配置(Master-Slave) 一. Redis Replicati ...

  3. redis集群(主从配置)

    市面上太多kv的缓存,最常用的就属memcache了,但是memcache存在单点问题,不过小日本有复制版本,但是使用的人比较少,redis的出现让kv内存存储的想法成为现实.今天主要内容便是redi ...

  4. Redis 集群_主从配置_哨兵模式

    首先:slaveof 可以在[从]服务器启动一个service服务,直接将[从]服务器定义为[从Redis] redis-server --slaveof <master-ip> < ...

  5. Linux之redis的安装,主从配置

    一,redis安装 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  6. Redis 单机模式,主从模式,哨兵模式(sentinel),集群模式(cluster),第三方模式优缺点分析

    Redis 的几种常见使用方式包括: 单机模式 主从模式 哨兵模式(sentinel) 集群模式(cluster) 第三方模式 单机模式 Redis 单副本,采用单个 Redis 节点部署架构,没有备 ...

  7. Redis数据库之服务器主从配置

    目的 主要培养对分布式REDIS主从复制架构运用的能力.理解并掌握REPLICATION工作原理的同时,能独立配置Replication ,使数据库运行在主从架格上.针对主从复制架构的运用,着力掌握S ...

  8. redis哨兵模式实现主从故障切换

    环境设定base2 172.25.78.12 masterbase3 172.25.78.13 slavebase4 172.25.78.14 slave1.配置一主二从环境在base2上[root@ ...

  9. Redis 单例、主从模式、sentinel 以及集群的配置方式及优缺点对比(转)

    摘要: redis作为一种NoSql数据库,其提供了一种高效的缓存方案,本文则主要对其单例,主从模式,sentinel以及集群的配置方式进行说明,对比其优缺点,阐述redis作为一种缓存框架的高可用性 ...

随机推荐

  1. PAT 跟奥巴马一起编程

    美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统.2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个 ...

  2. 从零搭建Window前端开发环境

    前言 作为一个小前端,是否因为搭建环境烦恼过,是否因为npm等国外镜像踩坑过,不要怕,接下来跟着我一步步搭建适合自己的开发环境吧!!! node 这个不用说了吧,我们经常和他打交道,无论是 gulp. ...

  3. react 性能优化注意事项

    工具: React 16 或更新版本   只需在url 后边加  ?react_perf 后 performance 一栏中会添加 User Timing devtool 分析 state.props ...

  4. Cypress系列(14)- 环境变量详解

    如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 前言 环境变量,其实就是根据环境的变化, ...

  5. CSS3动画基础

    编写页面 记事本或SublimeText或vscode编写html: <html> <div id="box"></div> <style ...

  6. 在k8s上部署日志系统elfk

    日志系统elfk 前言 经过上周的技术预研,在本周一通过开会研究,根据公司的现有业务流量和技术栈,决定选择的日志系统方案为:elasticsearch(es)+logstash(lo)+filebea ...

  7. 【代理】内网穿透工具 frp&frps

    frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发. ### frp 的作 ...

  8. 2019-02-15 python接口图灵机器人(简单好玩)

    import requests import json def Run(text): url = "http://openapi.tuling123.com/openapi/api/v2&q ...

  9. unittest实现用例运行失败截图

    把这个方法放到父类basecase(unittest.TestCase)就行了 #coding: utf-8 import unittest, random, os, traceback from s ...

  10. CSS文本相关之水平排列[4]

    在正常流中,文本都是从左往右.自上而下排列显示,如果想要改变排列方向的话,可以通过CSS属性来改变. text-align属性 文本排列(text-align)可改变文本在水平上的方向,但不改变内部的 ...