Redis|复制 REPLICA
文章目录
- 是什么
- 能干嘛
- 怎么玩
- 案例演示
- 复制原理和工作流程
- 复制的缺点
是什么
- 官网地址:https://redis.io/docs/management/replication/
- Redis 复制机制用于将数据从一个主节点(Master)复制到一个或多个从节点(Slave),以实现数据冗余、负载均衡和故障恢复。

- 一句话:就是主从复制,master 以写为主,slave 以读为主,当 master 数据变化的时候,自动将新的数据异步同步到其他的 slave 数据库
能干嘛
- 读写分离
- 容灾恢复
- 数据备份
- 水平扩容支撑高并发
怎么玩
-
配从(库)不配主(库):在 Redis 主从复制中,“配从不配主”是指只需要配置从节点(Slave)指向主节点(Master),而不需要配置主节点指向从节点。
- 主节点的主要职责是处理写操作和数据的变更。主节点不需要知道从节点的存在,它只需要将自己的数据变更传播给所有连接的从节点。这种设计简化了主节点的逻辑,使其更专注于数据写入和同步。
- 从节点是主动连接到主节点的,而不是主节点去连接从节点。从节点通过
SLAVEOF命令或配置文件中的slaveof指令,明确指定自己要复制的主节点。这种设计使得从节点可以动态地加入或离开复制拓扑,而不影响主节点的运行。
-
权限细节,重要
- master 如果配置了 requirepass 参数,需要密码登录
- 那么 slave 就要配置 masterauth 来设置校验密码,否则的话 master 会拒绝 slave 的访问请求

-
基本操作命令
info replication,可以查看复制结点的主从关系和配置信息replicaof 主库IP 主库端口,一般写入进 redis.conf 配置文件内,重启后生效slaveof 主库IP 主库端口- 每次与 master 断开之后,都需要重新连接,除非你配置进了 redis.conf 文件
- 在运行期间修改 slave 节点的信息,如果该数据库已经是某个主数据库的从数据库,那么会停止和原主数据库的同步关系转而和新的主数据库同步,重新拜码头
slaveof no one,使当前数据库停止与其他数据库的同步,转成主数据库,自立为王
案例演示
-
架构说明:
- 一个 Master 两个 Slave,三台虚拟机,每台都安装 redis

- 拷贝多个
redis.conf文件:redis6379.confredis6380.confredis6381.conf
-
小口诀:
- 三台虚拟机需要能相互
ping通且需要注意防火墙配置 - 三大命令
- 主从复制:
- replicaof 主库IP 主库端口
- 配从(库)不配主(库)
- 改换门庭:slaveof 新主库IP 新主库端口
- 自立为王:slaveof no one
- 主从复制:
- 三台虚拟机需要能相互
-
修改配置文件细节操作
-
开启daemonize yes:让程序以守护进程(daemon)模式运行。守护进程是在后台独立运行的进程,不与任何终端关联,通常用于服务器或长时间运行的服务。

-
注释掉
bind 127.0.0.1:在 Redis 配置文件 redis.conf 中,bind 参数用于指定 Redis 服务器监听的网络接口(IP 地址)。默认情况下,Redis 只绑定到 127.0.0.1,这意味着它只能接受来自本机的连接。注释掉后,Redis 会监听所有可用的网络接口(0.0.0.0),允许来自任何 IP 地址的连接,Redis 可以从其他机器访问,前提是防火墙或安全组允许。
-
protected-mode no:在 Redis 配置文件 redis.conf 中,protected-mode 是一个安全特性,用于保护 Redis 实例免受未授权访问。当你将 protected-mode 设置为 no 时,意味着禁用了这一保护模式。如果 protected-mode 设置为 yes(默认值),Redis 会进入保护模式。在保护模式下,如果 Redis 没有设置密码(requirepass)并且没有明确绑定到所有网络接口(bind 配置),Redis 只会接受来自 127.0.0.1(本地回环接口)的连接。这是为了防止 Redis 在没有适当安全配置的情况下暴露在外部网络中。
-
指定端口

-
指定当前工作目录,dir

-
pid文件名字,pidfile:在 Redis 配置文件 redis.conf 中,pidfile 参数用于指定 Redis 进程 ID(PID)文件的路径和名称。PID 文件是一个文本文件,其中包含 Redis 服务器进程的进程 ID(PID)。这个文件通常用于管理和监控 Redis 进程。

-
log文件名字,logfile:在 Redis 配置文件 redis.conf 中,logfile 参数用于指定 Redis 日志文件的路径和名称。Redis 会将运行时的日志信息(如启动信息、错误信息、调试信息等)写入该文件,方便排查问题和监控运行状态。

-
requiredpass:在 Redis 配置文件 redis.conf 中,requirepass 参数用于设置 Redis 的访问密码。启用密码后,客户端在连接 Redis 时必须提供正确的密码才能执行操作。这是一个重要的安全特性,用于防止未授权访问。
-
dump.rdb 名字

-
aof 文件,appendfilename

-
从机访问主机的通行密码 masterauth,必须配置,从机需要配置,主机不用

-
-
常用 3 招
- 一主二仆
- 薪火相传
- 反客为主
复制原理和工作流程
复制的缺点
相关文章:
Redis|复制 REPLICA
文章目录 是什么能干嘛怎么玩案例演示复制原理和工作流程复制的缺点 是什么 官网地址:https://redis.io/docs/management/replication/Redis 复制机制用于将数据从一个主节点(Master)复制到一个或多个从节点(Slave)&a…...
水利 2月26日练习
测量前准备 使用数字万用表的蜂鸣器档,可以高速检验电解电容器的质量好坏。测量方法如图5-14所示。将数字万用表拨至蜂鸣器档,用两支表笔区分与被测电容器Cx的两个引脚接触,应能听到一阵急促的蜂鸣声,随即声响中止,同时…...
Windows逆向工程入门之LOOP与REP指令的深度解析
公开视频 -> 链接点击跳转公开课程博客首页 -> 链接点击跳转博客主页 目录 1. LOOP 指令 概念 操作过程 用途 示例代码 扩展知识点:循环优化 2. REP 指令 概念 操作过程 用途 示例代码 扩展知识点:条件前缀 3. LOCK 指令 概念…...
[Web 安全] PHP 反序列化漏洞 —— PHP 序列化 反序列化
关注这个专栏的其他相关笔记:[Web 安全] 反序列化漏洞 - 学习笔记-CSDN博客 0x01:PHP 序列化 — Serialize 序列化就是将对象的状态信息转化为可以存储或传输的形式的过程,在 PHP 中,通常使用 serialize() 函数来完成序列化的操作…...
汽车免拆诊断案例 | 保时捷车发动机偶发熄火故障 2 例
案例1 2008款保时捷卡宴车行驶中发动机偶发熄火 故障现象 一辆2008款保时捷卡宴车,搭载4.8 L 自然吸气发动机,累计行驶里程约为21万km。车主反映,该车行驶中发动机偶发熄火;重新起动,发动机能够起动着机ÿ…...
Python游戏编程之赛车游戏6-2
3.2 move()方法的定义 Player类的move()方法用于玩家控制汽车左右移动,当玩家点击键盘上的左右按键时,汽车会相应地进行左右移动。 move()方法的代码如图7所示。 图7 move()方法的代码 其中,第20行代码通过pygame.key.get_pressed()函数获…...
数据安全_笔记系列09_人工智能(AI)与机器学习(ML)在数据安全中的深度应用
数据安全_笔记系列09_人工智能(AI)与机器学习(ML)在数据安全中的深度应用 人工智能与机器学习技术通过自动化、智能化的数据分析,显著提升了数据分类、威胁检测的精度与效率,尤其在处理非结构化数据、复杂…...
渗透测试【order by盲注实践】
实践环境基于sqli-lab靶场的第46关进行 bool盲注 代码如下: import requests from bs4 import BeautifulSoup# 定义获取用户名的函数,使用 BeautifulSoup 解析 HTML 页面,提取用户名信息 def get_username(resp):soup BeautifulSoup(resp,…...
ROS的action通信——实现阶乘运算(三)
在ROS中除了常见的话题(topic)通信、服务(server)通信等方式,还有action通信这一方式,由于可以实时反馈任务完成情况,该通信方式被广泛运用于机器人导航等任务中。本文将通过三个小节的分享,实现基于action通信的阶乘运…...
007:Cesium.ScreenSpaceEventHandler 知识详解,示例代码
查看本专栏目录 - 本文是第 007个API内容详解 vue+cesium 示例教程200+目录 文章目录 一、ScreenSpaceEventHandler 的基本概念初始化 ScreenSpaceEventHandler二、注册事件**常见事件类型**三、注销事件四、示例代码:鼠标移动时显示坐标信息五、示例代码:鼠标左键点击拾取地…...
期权帮|股指期货基差和价差有什么区别?
锦鲤三三每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 股指期货基差和价差有什么区别? 一、股指期货基差 股指期货基差是指股指期货价格与其对应的现货指数价格之间的差额。 股指期货基差计算公式:基差 现…...
WebSocketHandler 是 Spring Framework 中用于处理 WebSocket 通信的接口
WebSocketHandler 是 Spring Framework 中用于处理 WebSocket 通信的接口,其主要作用是定义了如何处理 WebSocket 的各种事件和消息。以下是 WebSocketHandler 的主要作用和功能: ### 1. 处理 WebSocket 生命周期事件 WebSocketHandler 定义了多个方法来…...
内网渗透测试-Vulnerable Docker靶场
靶场来源: Vulnerable Docker: 1 ~ VulnHub 描述:Down By The Docker 有没有想过在容器中玩 docker 错误配置、权限提升等? 下载此 VM,拿出您的渗透测试帽并开始使用 我们有 2 种模式: - HARD:这需要您将 d…...
一键导出数据库表到Excel
工作中,我们经常需要将数据库表导出到Excel,通常我们会用数据库编辑器之类的工具提供的导出功能来导出,但是它们的导出功能通常都比较简单。 这篇文章将介绍一种简单易用并且功能强大的导出方法。 新增导出 打开的卢导表工具,新…...
2025年电气工程与智能系统国际学术会议(IC2EIS 2025)
重要信息 官网:www.ic2eis.org(点击了解参会投稿等) 时间:2025年3月14-16日 地点:中国河南省郑州市 简介 2025年电气工程与智能系统国际学术会议(IC2EIS 2025)将于2025年3月14-16日在中国郑州举行。会议旨在为电气…...
Activiti 5 + Spring Boot全流程开发指南
目录 一、环境搭建(Spring Boot 2.x) 1.1 依赖配置 1.2 配置文件 二、流程定义与部署 2.1 创建BPMN文件(leave.bpmn) 2.2 流程部署服务 三、流程操作核心实现 3.1 启动流程实例 3.2 查询待办任务 四、审批流程处理 4.1 …...
docker安装etcd:docker离线安装etcd、docker在线安装etcd、etcd镜像下载、etcd配置详解、etcd常用命令、安装常见问题总结
官方网站 官方网址:etcd 二进制包下载:Install | etcd GitHub社区项目:etcd-io GitHub GitHub社区项目版本历史:Releases etcd-io/etcd GitHub 一、镜像下载 1、在线下载 在一台能连外网的linux上执行docker镜像拉取命令…...
【云安全】云原生-Docker(六)Docker API 未授权访问
Docker API 未授权访问 是一个非常严重的安全漏洞,可能导致严重的安全风险。 什么是 Docker API ? Docker API 是 Docker 容器平台提供的一组 RESTful API,用于与 Docker 守护程序进行通信和管理 Docker 容器。通过 Docker API,…...
【人工智能顶刊合集】CCF-A/B/C类推荐所有期刊目录,中科院1区审稿极速,81天录用!
本期盘点【人工智能】领域CCF-A/B/C类中科院1-2区期刊最新影响因子、分区、审稿周期参考! CCF-A类 Artificial Intelligence • 影响因子:5.1 • 期刊分区:JCR1区,中科院2区 • 年发文量:126 • 自引率࿱…...
C#实战:基于腾讯云大模型知识引擎原子能力提供的文档解析API快速提取图片信息为MD文档
目录 一、大模型知识引擎 LKE介绍 1.1 如何开通服务? 1.2 大模型知识引擎组成 二、案例实战 2.1、创建项目 2.2、引入腾讯大模型知识引擎 LKE调用SDK依赖库 2.3、代码编写 2.4、界面设计 三、总结 今天借助腾讯云大模型知识引擎原子能力提供的文档解析API快速提取图片…...
第7章_将应用程序与 Keycloak 集成
将应用程序与 Keycloak 集成 到目前为止,您已经了解了 Keycloak 中的主要概念和配置选项。在本章中,您将学习如何应用它们,以便您可以配置您的应用程序并将它们与 Keycloak 集成。 通过选定的集成场景和编码示例,您将根据应用程…...
kotlin的lateinit声明 的变量可能为null吗?
kotlin的lateinit声明 的变量可能为null吗? DeepSeek R1 思考 26 秒 思考过程 嗯,用户问的是Kotlin中的lateinit变量是否可能为null。首先,我需要回顾一下lateinit的作用和特性。lateinit用于延迟初始化一个非空类型的变量,这样…...
千峰React:案例一
做这个案例捏 因为需要用到样式,所以创建一个样式文件: //29_实战.module.css .active{text-decoration:line-through } 然后创建jsx文件,修改main文件:导入Todos,写入Todos组件 import { StrictMode } from react …...
ChatGPT入驻Safari,AI搜索时代加速到来
2月25日,人工智能领域巨头OpenAI宣布了一项重磅更新:为其广受欢迎的ChatGPT应用新增Safari浏览器扩展功能,并支持用户将ChatGPT设置为Safari地址栏的默认搜索引擎。这一举措标志着OpenAI在将ChatGPT整合进用户日常网络浏览体验方面迈出了重要…...
协方差(Covariance)与得分函数:从Fisher信息矩阵看统计关联
协方差与得分函数:从Fisher信息矩阵看统计关联 协方差(Covariance)是统计学中一个基础但强大的概念,它描述了两个随机变量之间的关系。在Fisher信息矩阵中,协方差以一种特别的形式出现:得分函数的协方差。…...
【错误记录】Arrays.asList 的坑
文章目录 概要原因小结 概要 最近在写一个需求的时候用到了这个方法生成一个 List,接着再往里面添加数据的时候就报错了,比如下面的例子。 public class Main {public static void main(String[] args) {List<Integer> res Arrays.asList(1, 2,…...
JConsole远程连接错误解决
个人博客地址:JConsole远程连接错误解决 | 一张假钞的真实世界 程序启动命令及参数如下: $ java -Dcom.sent.jmxremote.sslfalse -jar math-game.jar 防火墙已经放开30000端口访问,如下: $ telnet 192.168.72.156 30000 Tryin…...
CineMaster: 用于电影文本到视频生成的 3D 感知且可控的框架。
CineMaster是一种 3D 感知且可控的文本到视频生成方法允许用户在 3D 空间中联合操纵物体和相机,以创作高质量的电影视频。 相关链接 论文:cinemaster-dev.github.io 论文介绍 CineMaster是一种用于 3D 感知和可控文本到视频生成的新型框架。目标是让用…...
解决后端跨域问题
目录 一、什么是跨域问题? 1、跨域问题的定义 2、举例 3、为什么会有跨域问题的存在? 二、解决跨域问题 1、新建配置类 2、编写代码 三、结语 一、什么是跨域问题? 1、跨域问题的定义 跨域问题(Cross-Origin Resource Sh…...
防爆手机科普:与普通手机的区别?在危险作业场景扮演什么角色?
在易燃易爆的工业环境中,如石油化工、矿山开采等领域,一款具备特殊安全性能的通讯工具显得尤为重要。这就是我们今天要深入探讨的主题——防爆手机。那么,什么是防爆手机?它与普通手机有何区别?防爆手机在这些危险作业…...
