Redis教程——主从复制

在上篇文章我们学习了Redis教程——管道,这篇文章学习Redis教程——主从复制。

主从复制

为了数据更加安全可靠,在实际的项目中,肯定是有多个Redis服务,主机Redis以写为主,从机Redis以读为主,当主机Redis数据变化时,自动将新的数据异步同步到其它从机Redis中,也就是主从复制,其原理如下:

主从复制优势:

  • 实现了读写分离,更好地提高Redis的性能;

  • 容灾恢复;

  • 数据备份;

  • 水平扩容支撑高并发;

为了方便演示,这里我们准备了三台服务器并安装了Redis,没服务器的可以使用VMware虚拟机,主从关系如下图所示:

注意:服务器之间必须相互ping通和必须放行Redis的端口,如下图所示:

这里Redis端口都是6379,大家可以根据需求,调整Redis的端口。

在开始之前,我们先初步配置Redis,redis.conf配置如下所示:

daemonize yes        # 开启Redis
bind 127.0.0.1        # 注释该行
protected-mode no       # 允许外界连接
requirepass 密码              # 为Redis设置密码
dir /myRedis       # 指定当前工作目录
logfile "/myRedis/6379.log"  # Redis日志

实现主从

主机Redis一般情况下都会设置登录密码,那么从机Redis需要配置masterauth来设置校验密码,否则主机Redis会拒绝从机Redis的访问请求。在实现主从之前,首先在从机Redis的redis.conf配置中添加如下:

masterauth "123456"

配置完成后,执行如下命令查看主从关系和配置信息,

info replication   # 查看主从关系和配置信息
keys *      # 查看Redis数据库的数据所有键

如下图所示:

可以看出现在还没任何主从关系,而且Redis数据库没任何数据。

接下来我们将使用命令行和配置的方式实现主从复制。

命令实现主从

使用slaveof命令实现主从,其配置语法格式如下:

slaveof 主机RedisIP 主机Redis端口

示例代码如下:

slaveof 47.119.21.164 6379

运行结果如下:

可以发现,当执行完命令后,47.119.21.164就变为了主机,175.178.108.75就变为了从机。

当主机Redis拥有读写操作权限,从机Redis只有读操作权限,如下图所示:

当某个Redis服务变为从机后,会立即复制主机Redis中的数据,如下图所示:

注意:使用命令行实现主从后,当从机Redis断开连接后,主从关系也会断开。如下图所示:

配置实现主从

使用replicaof配置从机Redis,其配置语法格式如下:

replicaof 主机RedisIP 主机Redis端口

示例代码如下:

replicaof 47.119.21.164 6379

如下图所示:

接下来我们依次启动主从Redis即可,当主机Redis执行写操作后,从机Redis立刻复制,如下图所示:

注意:

  • 当从机Redis断开连接后,主机Redis执行了写操作,断开连接的从机Redis重新连接,从机Redis会立刻复制主机Redis的数据,实现数据同步;

  • 当主机Redis关闭后,从机Redis不会变为主机;

关闭主从

使用slaveof no one命令使当前数据库停止与其他数据库的同步,实现从机Redis变为主机Redis。如下图所示:

注意:如果是配置实现主从的话,从机Redis重启后,又会重新建立主从关系。

好了,Redis教程——主从复制就讲到这里了,下篇文章我们学习Redis教程——哨兵监控。

公众号:白巧克力LIN

该公众号发布Python、数据库、Linux、Flask、Django、自动化测试、Git、算法、前端、服务器等相关文章!

- END -

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/598130.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

森林消防泵操作指南:守护绿色的必备技能/恒峰智慧科技

在广袤无垠的森林中,每一片绿叶都承载着生命的希望。然而,当火焰无情地吞噬这片生机时,我们需要一种强大的力量来与之抗衡。这时,森林消防泵便成为了我们的守护者,掌握其操作技巧,更是每一位热爱大自然者的…

企业防泄露如何做到安全有效

随着信息时代的急速演进,企业的重要商业机密越来越多地以电子文档的形式存在。常见的CAD图纸、Office文档承载着公司的核心价值和竞争优势,同时也面临着前所未有的数据安全威胁。确保这些重要信息的文档安全已经成为每个企业必须直面的挑战。在这样的背景…

Linux-05

磁盘管理 查看磁盘使用量 df -h dumount /dev/dai /mnt 将外部设备dai挂载到mnt目录下umount 卸载进程管理 ps -a 所有进程 ps -u ps aux|grep redis 常用 查看redis相关的进程kill -9 进程id 结束进程

ABAP: BAPI_MATERIAL_SAVEDATA 创建、修改物料信息毛重不生效

1、BAPI_MATERIAL_SAVEDATA 修改物料信息 参考:https://blog.csdn.net/zhongguomao/article/details/51917696 clientdata-matl_group ls_in-matkl."物料组clientdata-base_uom ls_in-meins."基本计量单位clientdata-extmatlgrp ls_in-extwg."外…

Linux系统编程之基本指令

零、Linux发展史 1、诞生 1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组 (comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统—…

XAMPP是什么?XAMPP好不好用?

XAMPP是一个免费且开源的软件套件,用于在个人计算机上轻松搭建和运行 Apache 服务器、MySQL 数据库、PHP 和 Perl,让用户可以在个人电脑上搭建服务器环境的平台。 XAMPP的由来是 X(表示跨平台)、Apache、MySQL、PHP 和 Perl 的首字母缩写。 它集成了这…

锅炉轴承界的“耐热冠军”:江苏鲁岳耐高温300度自润滑轴承!

耐高温300度锅炉轴承,江苏鲁岳自润滑技术领先行业!300度高温轻松应对,江苏鲁岳锅炉轴承自润滑技术引领潮流!耐磨耐温套-钢厂托辊用无油自润滑钢套-江苏鲁岳耐高温轴承。 在工业生产的大潮中,高温环境始终如一地考验着设…

400G光模块产品最全分类解析

随着信息技术的迅猛发展,网络带宽需求不断增加,而400G光模块作为当前最热门的光通信技术之一,正在成为新一代网络的关键组成部分。本文将对400G光模块进行最全面的分类解析,以帮助大家深入了解其技术特点和应用场景。 一、ETU-LI…

前端 | 实时电子时钟

文章目录 &#x1f4da;实现效果&#x1f4da;模块实现解析&#x1f407;html&#x1f407;css&#x1f407;JavaScript &#x1f4da;实现效果 &#x1f4da;模块实现解析 &#x1f407;html 搭个框架<!DOCTYPE html> <html lang"en"> <head>&l…

04-23 周二 shell环境下读取使用jq 读取json文件

04-23 周二 shell环境下读取使用jq 读取json文件 时间版本修改人描述04-23V0.1宋全恒新建文档 简介 工具列表 Shell脚本处理JSON数据工具jq jshon是另外一个读取json数据的工具 而且其支持XML和YAML格式文件 linux shell环境下处理yml文件 #!/bin/bash# 加载shyaml库 . /…

计算机网络学习记录Day1

你好,我是Qiuner. 为记录自己编程学习过程和帮助别人少走弯路而写博客 这是我的 github gitee 如果本篇文章帮到了你 不妨点个赞吧~ 我会很高兴的 &#x1f604; (^ ~ ^) 想看更多 那就点个关注吧 我会尽力带来有趣的内容 计算机网络学习记录Day1 本文基于1.1 计算机网络在信息…

信创基础软件之中间件

信创基础软件之中间件 中间件概述 中间件是一种应用于分布式系统的基础软件&#xff0c;位于应用与操作系统、数据库之间&#xff0c;主要用于解决分布式环境下数据传输、数据访问、应用调度、系统构建和系统集成、流程管理等问题&#xff0c;是分布式环境下支撑应用开发、运…

学习记录:AUTOSAR R20-11的阅读记录(五)【CP(5.11-5.19)】完

接上回&#xff1a;学习记录&#xff1a;AUTOSAR R20-11的阅读记录&#xff08;四&#xff09;【CP&#xff08;5.6-5.10&#xff09;】 五、CP 11、General&#xff08;4个&#xff09; 5.11 File Name 说明 1 AUTOSAR_EXP_ LayeredSoftwareArchitecture.pdf 描述了AUTO…

AIGC (AI-Generated Content) 技术深度探索:现状、挑战与未来愿景

&#x1f525; 个人主页&#xff1a;空白诗 文章目录 &#x1f916; AIGC技术&#xff1a;塑造未来的创意与内容革命 &#x1f31f;引言 &#x1f680;AIGC技术发展现状 &#x1f4c8;核心技术驱动 &#x1f4a1;应用领域拓展 &#x1f310; 面临的挑战 ❌真实性与伦理考量 &am…

Spring @Repository 注解

Spring 的项目严重依赖注解。 Repository 注解 在Spring2.0之前的版本中&#xff0c;Repository注解可以标记在任何的类上&#xff0c;用来表明该类是用来执行与数据库相关的操作(即dao对象)&#xff0c;并支持自动处理数据库操作产生的异常 在Spring2.5版本中&#xff0c;引…

3度带6度带中央经线及带号换算问题

前言&#xff1a;3度带6度带中央经线及代号换算问题是比较繁琐的一个问题&#xff0c;不经常用&#xff0c;公式记不住&#xff0c;因此本文特此整理&#xff0c;以备查。 1.基本概况 我国基本比例尺地形图除1&#xff1a;100万采用兰勃特投影&#xff08;lambert&#xff09;外…

信息系统项目管理师0090:项目经理的影响力范围(6项目管理概论—6.3项目经理的角色—6.3.2项目经理的影响力范围)

点击查看专栏目录 文章目录 6.3.2项目经理的影响力范围1.概述2.项目3.组织4.行业5.专业学科6.跨领域6.3.2项目经理的影响力范围 1.概述 项目经理在其影响力范围内可担任多种角色,这些角色反映了项目经理的能力,体现了项目经理的价值和作用,项目经理会涉及项日、组织、行业、…

爬虫案例:股吧,使用Selenium

爬虫案例:股吧,使用Selenium 实用工具关注公众号爬虫探索者获取。 发送对应关键词: 1.运行环境 pip install selenium==4.9.1 pip install pymysql1.1.高版本Chrome问题 针对于高版本的Chrome浏览器 1.2.最终效果 2.目标网站 3.参数介绍 BASE_URL = https://guba.eas…

ppp和ppp mp理论实验

ppp简介 PPP&#xff08;点对点协议&#xff09;为在点对点连接上传输多协议数据包提供了一个标准方法&#xff0c;是数据链路层封装协议的一种方法&#xff0c;支持同步和异步两种传输方式。&#xff08;除了PPP还有HDLC等&#xff0c;不过HDLC只支持同步方式&#xff09; P…

信号与进程(3):信号及其使用

信号及其使用 参考博客 Linux信号的产生和处理 信号及其使用 信号的产生 信号由内核产生&#xff0c;信号的生成与事件的发生相关&#xff0c;事件的发生源有3类&#xff1a; 1、用户 用户在终端上按下某些按键时会产生信号&#xff0c;如**CtrlC产生SIGINT信号&#xff0…
最新文章