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.rhkb.cn/news/320808.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web3与智能合约:科技革新下的新金融时代

在当今数字化时代,Web3和智能合约正在共同塑造着金融领域的未来。Web3作为下一代互联网的重要组成部分,以其去中心化、安全性和透明性为核心特点,正推动着金融行业向着数字化和去中心化的方向发展。而智能合约作为Web3技术的关键应用之一&…

解决 git克隆拉取代码报SSL certificate problem错误

问题:拉取代码时报错,SSL证书问题:证书链中的自签名证书问题 解决:只需要关闭证书验证,执行下面代码即可: git config --global http.sslVerify "false" 再次拉取代码就可以了

ESCI3罗德与施瓦茨ESCI3测试接收机

181/2461/8938产品概述: R&S ESCI接收机的特点包括: 出色表现 多达10个子范围的可编程扫描表自动或交互式预览和最终EMI测量的内部测试程序预扫描、数据缩减(峰列表)和最终测量的评估功能光谱分析仪快速ACP测量时域分析(记…

Web前端一套全部清晰 ⑥ day4 CSS.2 复合选择器、CSS特性、背景属性、标签的显示模式

别人的议论,那是别人的,你的人生,才是你的 —— 24.5.7 一、复合选择器 定义:由两个或多个基础选择器,通过不同的方式组合而成 作用:更准确、更高效的选择目标元素(标签) 1.后代选择…

红黑树的实现

✨前言✨ 📘 博客主页:to Keep博客主页 🙆欢迎关注,👍点赞,📝留言评论 ⏳首发时间:2024年5月7日 📨 博主码云地址:博主码云地址 📕参考书籍&#…

PMP培训一般要多久?

考过PMP很久了,学习时长还是记得很清楚的。因为有一部分的项目经验,报了威班PMP的培训,看了宣传是50天通过PMP,但是我仅仅用了一个月出头就搞定了,算下来才四十天不到就已经学完在准备冲刺参加考试了,最后5…

数字旅游以科技创新为核心竞争力:推动旅游服务的智能化、高效化,满足游客日益增长的旅游需求

一、引言 随着科技的飞速发展,数字旅游作为旅游业与信息技术结合的产物,正以其独特的魅力改变着传统旅游业的格局。科技创新作为数字旅游的核心竞争力,不仅推动了旅游服务的智能化、高效化,更满足了游客日益增长的旅游需求。本文…

了解TMS运输管理系统,实现物流高效运转

TMS运输管理系统(Transportation Management System)是一种集成物流和信息技术的解决方案,通过优化运输流程、实时跟踪货物信息和自动化管理操作,提高物流效率,降低运营成本,实现高效运输。 TMS运输管理系…

最常用的AI工具

在日常工作生活中,我试用了几十种AI人工智能工具,下面我来推荐下我最常使用,也是最方便快捷的AI工具。 1百度文心一言 文心一言是一个综合性的大语言模型,整合了很多优秀的提示词,尤其是文心4.0大模型,在中…

Android build.prop生成过程源码分析

Android的build.prop文件是在Android编译时刻收集的各种property【LCD density/语言/编译时间, etc.】&#xff1b;编译完成之后&#xff0c;文件生成在out/target/product/<board【OK1000】>/system/目录下&#xff1b;在Android运行时刻可以通过property_get()[c/c域] …

JAVA语言开发的(智慧校园系统源码)智慧校园的痛点、智慧校园的安全应用、智慧校园解决方案

一、智慧校园的痛点 1、信息孤岛问题&#xff1a;由于校园内各部门或系统独立开发&#xff0c;缺乏统一规划和标准&#xff0c;导致数据无法有效整合和共享&#xff0c;形成了信息孤岛。 2、技术更新与运维挑战&#xff1a;智慧校园的建设依赖于前沿的信息技术&#xff0c;如云…

Android Studio的笔记--布局文件

关于Layout布局文件的使用 LinearLayoutRelativeLayout之前文章的内容一些常见性质在android.graphics.Color中定义了12种常见的颜色常数线性布局LinearLayout 一些常见使用文本框TextView设置文本内容编辑框EditText获取文本内容按钮Button控件使用其他按钮修改图标及名称添加…

什么年代了,还在拿考勤说事

最近&#xff0c;看到了某公司的一项考勤规定&#xff1a;自然月内&#xff0c;事假累计超过3次或者累计请假时间超过8小时的&#xff0c;不予审批&#xff0c;强制休假的按旷工处理。 真的想吐槽&#xff0c;什么年代了&#xff0c;还在拿考勤说事&#xff0c;这是什么公司、什…

模拟电路设计与分析

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 计算机工作原理存储单元 计算机工作原理 计算机最底层语言是二进制&#xff0c;和我们生活中使用的阿拉伯数字是十进制数&#x…

百度文库AI中文成语点选识别

最近百度文库又出了新验证码。在出现AI旋转验证码之后&#xff0c;又出现了AI中文成语点选。看样子验证码的未来发展路径是全面走向AI。出现这样的情况是谁都不想看到的。由于AI的随机性&#xff0c;未来识别可能会越来越难。 下图就是百度最新的AI中文成语点选的样例图 没有办…

pandas入门

pandas入门 一、pandas简介1.1 pandas介绍1.2 pandas的基本功能 二、pandas快速入门2.1 读取数据2.2 验证数据2.3 建立索引2.4 数据抽取2.4.1 选择列2.4.2 选择行2.4.3 指定行和列 2.5 排序2.6 分组聚合2.7 数据转置2.8 增加列2.9 统计分析 一、pandas简介 1.1 pandas介绍 pa…

深度学习之基于YOLOv5草莓成熟度目标检测系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 草莓作为一种广受欢迎的水果&#xff0c;其成熟度的判断对于保证草莓的品质和口感至关重要。然…

Redis-五大数据类型-Zset(有序集合)

五大数据类型-Zset&#xff08;有序集合&#xff09; 简介 Zset与Set非常相似&#xff0c;是一个没有重复元素的String集合。 不同之处是Zset的每个元素都关联了一个分数&#xff08;score&#xff09;&#xff0c;这个分数被用来按照从低分到高分的方式排序集合中的元素。集…

文献速递:深度学习医学影像心脏疾病检测与诊断--从SPECT/CT衰减图中深度学习冠状动脉钙化评分提高了对重大不良心脏事件的预测

Title 题目 Deep Learning Coronary Artery Calcium Scores from SPECT/CT Attenuation Maps Improve Prediction of Major Adverse Cardiac Events 从SPECT/CT衰减图中深度学习冠状动脉钙化评分提高了对重大不良心脏事件的预测 01 文献速递介绍 低剂量非门控CT衰减校正&am…

红黑树(RBTree)认识总结

一、认识红黑树 1.1 什么是红黑树&#xff1f; 红黑树是一种二叉搜索树&#xff0c;与普通搜索树不同的是&#xff0c;在每个节点上增加一个“颜色”变量 —— RED / BLACK 。 通过对各个节点颜色的限制&#xff0c;确保从 根 到 NIL &#xff0c;没有一条路径会比其他路径长出…