Linux实现一主二从模式

主从复制: 复制概念中分为两类数据库,一类是主数据库(master),一类是从数据(slave),主 数据库可以进行读写操作,并把写的操作同步给从数据库,一般从数据库是只读的。(读写分 )一个主数据库可以有多个从数据库,而一个从数据库只能属于一个主数据库。
特点
主数据库可以进行读写操作,当读写操作导致数据变化时会自动将数据同步给从数据
从数据库一般都是只读的,并且接收主数据库同步过来的数据
一个 master 可以拥有多个 slave,但是一个 slave 只能对应一个 master
 slave 挂了不影响其他 slave 的读和 master 的读和写,重新启动后会将数据从 master
同步过来
master 挂了以后,不影响 slave 的读,但 redis 不再提供写服务,master 重启后 redis
将重新对外提供写服务
 master 挂了以后,不会在 slave 节点中重新选一个 master
如图 7-1 所示,这就是经典的一主二从集群模式。
                                图7-1主从复制集群模式
实战:
素材
素材(需要自己去网上找)中包含 redis-new.sh sentinel-new.sh
redis-new.sh:用于生成新的 redis 配置文件,通过参数自动修改配置,有兴趣的同学
可以打开查看脚本各代码含义。
sentinel-new.sh:用于生成哨兵配置文件,哨兵概念会讲解。
克隆三台安装了 Redis 的虚拟机
名称推荐包含主机 IP 地址尾数,这样一眼就能看出是主机还是从机,如图 7-8 所示,建立
Redis-151/Redis-152/Redis-153 三台虚拟机。
启动并为每台机器固定 IP 地址
启动每台机器,分别登录并修改 IP 地址,例如 Redis-151 机器,命令如下:
  
 cat  /etc/sysconfig/network-scripts/ifcfg-ens33  查看是否正确否则,
 vi /etc/sysconfig/network-scripts/ifcfg-ens33   修改文件,默认你的文件是能够正常操作的,注意网关ip,和要修改的ip
注意:修改配置要重启网络 
# 重启网络服务
systemctl restart network

接下来就是搭建集群:

注意:自己的ip。

Redis151机器执行:

# 新建 redis_7001.conf 配置文件,端口 7001,密码都是 123456
sh ~/redis-new.sh 7001 123456 123456
Redis152 只需要修改端口为 7002Redis153 修改为 7003 即可。
启动 Redis 进程并测试
Redis-151 是主机,启动非常简单,配置文件生成位置和之前一样,我们可以通过以下命令 启动。
# Redis151 执行启动命令
 cd /usr/local/redis/conf/
 /usr/local/redis/bin/redis-server redis_7001.conf
7001是主机,7002,7003为从机
# 测试从机是否能写入
  get name
  set name zhangsan
# 注意到 Redis-151 主机执行
 /usr/local/redis/bin/redis-cli -p 7001 -a 123456
 # 查看主从复制关系
 info replication
 # 测试主机是否能写入
 get name
 set name zhangsan
 get name

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

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

相关文章

大势智慧亮相第十八届中国智慧城市大会

6月26日-28日,第十八届中国智慧城市大会在武汉盛大举行。本次大会以“数智赋能城市创新协同共治发展蓝图”为主题,汇聚了李德仁、刘经南等八位院士及全国智慧城市领域的专家学者、行业精英,共同探讨行业发展新方向。作为实景三维技术领域领军…

Xbox One 控制器转换为 macOS HID 设备的工作原理分析

Xbox One 控制器转换为 macOS HID 设备的工作原理分析 源代码在 https://github.com/guilhermearaujo/xboxonecontrollerenabler.git 这个工程的核心功能是将 Xbox One 控制器(macOS 原生不支持的设备)转换为 macOS 可识别的 HID 设备。这里通过分析代…

Notepad++ 复制宏、编辑宏的方法

Notepad具有宏的功能,能够记录当下所有操作,后续只需要一键就可以重复执行,大大减少工作量。 比如我需要把很多文件里面的字符完成替换,那我只需要把替换的过程录制成宏,后续打开文件就可以一键替换了。 但是Notepad的…

Oracle:报错jdbc:oracle:thin:@IP地址:端口:实例名, errorCode 28001, state 99999

报错原因是oracle密码过期,根本解决办法是让密码不再过期,永久有效。具体操作记录一下。 cmd命令行输入: sqlplus / as sysdba修改Oracle密码期限为无限: SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;SQL&…

Apipost 签约中原消费金融:共建企业级 API 全链路协作平台,推动接口管理与测试智能化升级

随着企业数字化转型的不断深化,API 正在从技术细节演变为业务协作的核心枢纽。特别是在金融行业,微服务架构、系统联动、合规要求等多重因素交织下,接口数量激增、管理复杂度提升、质量保障难度加大。近日,Apipost 与中原消费金融…

AntV L7 之LarkMap 地图

一、安装$ npm install -S antv/l7 antv/larkmap # or $ yarn add antv/l7 antv/larkmap二、引入包import type { LarkMapProps, LineLayerProps } from antv/larkmap; import { LarkMap, LineLayer, Marker } from antv/larkmap;三、config配置const layerOptions:Omit<Lin…

客户案例 | 某新能源车企依托Atlassian工具链+龙智定制开发服务,打造符合ASPICE标准的研发管理体系

客户案例 ASPICE标准已成为衡量整车厂及供应商研发能力的重要标尺。某知名车企在其重点项目研发过程中&#xff0c;面临着ASPICE 4.0评估认证的挑战——项目团队缺乏体系经验、流程规范和数字化支撑工具。 为帮助该客户团队顺利通过ASPICE认证并提升研发合规性&#xff0c;At…

stm32的USART使用DMA配置成循环模式时发送和接收有着本质区别

stm32的USART使用DMA配置成循环模式时发送和接收有着本质区别&#xff0c;不要被网上误导了。发送数据时会不停的发送数据&#xff0c;而接收只有有数据时才会接收&#xff0c;没有数据时就会挂起等待。 一、触发机制的差异‌ ‌发送方向&#xff08;TX&#xff09;——状态驱…

银河麒麟系统上利用WPS的SDK进行WORD的二次开发

目录 1.下载安装包 2.安装WPS 3.获取示例代码 4.编译示例代码 5.完整示例代码 相关链接 1.下载安装包 去wps的官网 https://www.wps.cn/ 下载linux版本。 下载的安装包名称为&#xff1a;wps-office_12.8.2.21176.AK.preload.sw_amd64.deb, 官网有介绍适用于Ubuntu、麒麟…

人工智能之数学基础:如何判断正定矩阵和负定矩阵?

本文重点 正定矩阵和负定矩阵是线性代数中的重要概念,在优化理论、数值分析、统计学等领域有广泛应用。 正定矩阵(负定矩阵) 如上所示,我们可以看到满足上面的性质的时候,我们可以认为矩阵A称为正定矩阵(负定矩阵) 举例: 半正定(半负定) 如果≥或者≤的时候,我们认为矩…

汇编基础介绍——ARMv8指令集(四)

一、CMP 指令 CMP 指令用来比较两个数的大小。在 A64 指令集的实现中&#xff0c;CMP 指令内部调用 SUBS 指令来实现。 1.1、使用立即数的 CMP 指令 使用立即数的 CMP 指令的格式如下。 CMP <Xn|SP>, #<imm>{, <shift>} 上述指令等同于如下指令。 SUBS …

深入剖析 Electron 性能瓶颈及优化策略

Electron 是一个流行的跨平台桌面应用开发框架&#xff0c;基于 Chromium 和 Node.js&#xff0c;使得开发者可以使用 Web 技术&#xff08;HTML、CSS、JavaScript&#xff09;构建跨平台的桌面应用。许多知名应用如 VS Code、Slack、Discord 和 Figma 都采用了 Electron。然而…

Qt的前端和后端过于耦合(0/7)

最近在写一个软件&#xff0c;这个软件稍微复杂一些&#xff0c;界面大概需要十几个&#xff0c;后端也是要开多线程读各种传感器数据。然后鼠鼠我呀就发现一个致命的问题&#xff0c;那就是前端要求的控件太多了&#xff0c;点一下就需要通知后端&#xff0c;即调用后端的函数…

碰一碰发视频源码搭建定制化开发:支持OEM

在移动互联网与物联网深度融合的当下&#xff0c;“碰一碰发视频” 作为一种创新的信息交互方式&#xff0c;正逐渐应用于营销推广、产品展示、社交互动等多个领域。其核心在于通过近场通信技术&#xff08;如 NFC、蓝牙&#xff09;实现设备间的快速连接&#xff0c;无需复杂操…

机器学习文本特征提取:CountVectorizer与TfidfVectorizer详解

一、文本特征提取概述 在自然语言处理&#xff08;NLP&#xff09;和文本挖掘任务中&#xff0c;文本特征提取是将原始文本数据转换为机器学习模型可以理解的数值特征的关键步骤。scikit-learn提供了两种常用的文本特征提取方法&#xff1a;CountVectorizer&#xff08;词频统…

【PHP】.Hyperf 框架-collection 集合数据(内置函数归纳-实用版)

&#x1f4cc; Article::query()->where(article_id, 6)->select()->first()✍️ 进行数据结果的循环&#xff0c;遍历 1.each() 方法遍历集合中的项目并将每个项目传递给闭包&#xff0c;进行处理数据 Article::query()->get()->each(function ($item) {// 可…

巨兽的阴影:大型语言模型的挑战与伦理深渊

当GPT-4这样的庞然大物能够流畅对话、撰写诗歌、编写代码、解析图像&#xff0c;甚至在某些测试中媲美人类专家时&#xff0c;大型语言模型&#xff08;LLM&#xff09;仿佛成为了无所不能的“智能神谕”。然而&#xff0c;在这令人目眩的成就之下&#xff0c;潜藏着复杂而严峻…

vue根据链接生成二维码 qrcode

vue根据链接生成二维码 qrcode js 需求&#xff1a;后端返回一个完整链接&#xff0c;前端根据链接生成一个二维码 1、安装qrcode插件 npm install qrcode2、引入qrcode,并且使用完整代码 <template> <div><img :src"qrcodeData" class"qrcode…

C# 事件(源代码组件概览)

源代码组件概览 需要在事件中使用的代码有5部分&#xff0c;如图15-4所示&#xff0c;后文会依次进行介绍。这些组件如下 所示 委托类型声明事件和事件处理程序必须有共同的签名和返回类型&#xff0c;它们通过委托类型 进行描述。事件处理程序声明订阅者类中会在事件触发时执…

音视频会议服务搭建(设计方案-数据库sql)-02

前言 衔接上篇文章&#xff0c;这篇是相关的表结构sql语句记录 EchoMeet 会议系统数据库表结构设计 &#x1f4cb; 设计概述 本文档定义了EchoMeet音视频会议系统的完整数据库表结构&#xff0c;采用微服务架构设计&#xff0c;支持高并发、可扩展的会议场景。 &#x1f3af…