3 - 主从复制结构|持久化|数据类型

主从复制结构|持久化|数据类型

  • 主从复制 没有高可用功能
    • 命令行配置
    • 修改配置文件(永久有效,重启了redis服务依然有效)
  • 配置带验证的主从复制
  • 主从从配置
  • 哨兵服务(可实现高可用)
  • 持久化
    • RDB文件的使用
    • AOF文件的使用
  • 数据类型

主从复制 没有高可用功能

Redis服务的主从复制(与mysql服务功能一样,都是实现数据自动同步的存储结构)
主服务器:接收客户端连接
从服务器:连接主服务器同步数据
主从复制结构模式:一主一从 一主多从 主从从 主坏了 从顶不上去 需要借助软件
全量同步 覆盖原始数据
在这里插入图片描述

说明:redis服务运行后,默认角色都是master 所以一台主机做master服务器的话,无需配置。主从结构中的从服务器都是只读的,客户端连接从服务器对数据仅有查询权限

redis-cli -h 192.168.4.51 -p 6379
> info replication

在这里插入图片描述

命令行配置

# 马上生效 但不是永久 适合配置线上服务器
> info replication #  查看服务器信息
> slaveof 主服务器ip地址 主服务器端口号 # 指定主服务器ip地址和服务器端口号
> slaveof no one  # 临时恢复为主服务器

修改配置文件(永久有效,重启了redis服务依然有效)

]# vim /etc/redis/6379.conf
slaveof 主服务器ip地址  主服务器端口号
:wq

在这里插入图片描述

配置带验证的主从复制

主从结构中的master服务器Redis服务设置了连接密码,slave服务器要指定连接密码才能正常同步master主机数据
需求:给主从从结构中的master服务器的redis服务设置连接密码 slave服务器配置连接master服务服务器密码

# 第一步 给Redis服务器51设置连接密码123456
> config get requirepass
> config set requirepass 123456
> config rewrite
# 第二步 给redis服务器52设置master51密码 并设置本机连接密码
redis-cli -h ..52 -p 6379
> config get requirepass
> config set requirepass 123456
> config rewrite
> config get masterauth # 获取主服务器的连接项
> config set masterauth 123456 # 设置主服务器的连接密码
> config rewrite
# 第三步 在redis服务器53设置连接master服务器 52的连接密码
> config set masterauth 123456 # 设置主服务器的连接密码
> config rewrite

主从从配置

在host53主机做如下配置

第一步 把一主多从结构中的53主机恢复为独立的数据库服务器
> slaveof no one 
第二步 把53配置为52主机的slave服务器
> slaveof 192.168.4.52 6379

哨兵服务(可实现高可用)

监视主从复制结构中的主服务器,发现主服务器无法连接后,会把对应的从升级为主服务器数据库,继续监视新的主数据库服务器 坏掉的主数据库服务器恢复后 会自动做当前主服务器的从服务器

哨兵服务+redis主从服务 能够实现redis服务高可用和数据自动备份,当远比Redis 集群的资本和运维成本要低

说明:

  1. 可以使用一主一从 或 一主多从 或 主从从 + 哨兵服务 做服务的高可用和数据自动备份
  2. 如果主从结构中的redis服务设置连接密码的话必须全每台服数据库都要设置密码且密码要一样
  3. 宕机的服务器 启动服务后,要指定主服务器的连接密码
    要么都设置连接密码 必须一样
# 需求: 192.168.4.57主机做哨兵服务器 主从从结构 实现redis服务的高可用和数据自动备份
步骤一:给53主机的Redis服务设置连接密码 要与另外2台Redis服务器设置一样的连接密码
]# redis-cli -h 192.168.4.53
> config set requirepass 123456
> auth 123456
> config rewrite
步骤二:配置哨兵服务(4.57)安装源码软件redis (无需做初始化配置 如果做了初始化吧redis服务停止即可)
[~]# yum -y install gcc
[~]# tar -zxf redis-4.0.8.tar.gz
[redis]# cd redis-4.0.8/
[redis-4.0.8]# make && make install  创建并编辑主配置文件(说明源码包里有哨兵服务配置文件的模版sentinel.conf)
vim /etc/sentinel.conf
bind 192.168.4.57 # 哨兵服务地址
port 26379 # 哨兵服务的端口号
sentinel monitor redis_server 192.168.4.51 6379 1  # 主的ip 主的端口 哨兵服务器台数
sentinel auth-pass redis_server 123456
# 如果主服务器没有连接密码此配置可以省略
:wq
# 置入后台运行
nohup redis-sentinel /etc/sentinel.conf &
jobs # 查看当前终端后台进程

在这里插入图片描述
测试配置

1.停止主服务器的redis服务
/etc/init.d/redis_6379 stop
2.在服务器52主机 查看复制信息 角色为master
[root@redisB ~]# redis-cli -h 192.168.4.52 -p 6352
192.168.4.52:6352> info replication
# Replication
role:master  //角色是master
connected_slaves:0

在这里插入图片描述

持久化

什么是持久化:redis服务可以永久的保存数据 ,如何实现的? redis运行过程中 自动把内存里的数据自动复制到硬盘里
实现方式有两种:
1. RDB文件:指定就是数据库目录下的dump.rdb文件 redis运行后 会根据配置文件的设置的存储频率 把内存数据复制到dump.redis里 但是意外宕机时 丢失最后一次持久化数据。
2. AOF文件:redis服务AOF文件与mysql的binlog日志文件功能相同 是一个文件,记录连接redis服务后执行的写操作命令并以追加的方式记录写操作命令 默认没有开启 需要认为开启。

RDB文件的使用

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
使用RDB文件 实现数据的备份与恢复
第一步 拷贝dump.rdb 文件就是对数据的备份
在这里插入图片描述

第二步 把备份的dump文件 再次拷贝回数据库目录就是恢复

AOF文件的使用

启用AOF文件 通过修改配置文件启用(修改文件需要重启redis服务才能生效,所以适合线下服务器)每隔一秒存一次
注意 : 通过配置文件启用AOF文件 服务器原有的数据会被删除 所以命令行的方式更靠谱
在这里插入图片描述
命令行的方式:
在这里插入图片描述
修复aof文件:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据类型

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

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

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

相关文章

幻兽帕鲁服务器多少钱一个?32元你敢信吗?4核16G

幻兽帕鲁服务器多少钱?价格便宜,阿里云4核16G幻兽帕鲁专属服务器32元1个月、66元3个月,4核32G配置113元1个月、339元3个月;腾讯云4核16G14M服务器66元1个月、277元3个月、1584元一年。阿腾云atengyun.com分享阿里云和腾讯云palwor…

LEETCODE 164破解闯关密码

class Solution { public:string crackPassword(vector<int>& password) { //在比较两个字符串大小时&#xff0c;其实是按照字典序逐个比较它们的字符。首先比较两个字符串的第一个字符&#xff0c;如果它们不相等&#xff0c;则可以根据它们的 ASCII 码大小确定它们…

opencv012 滤波器04 中值滤波,双边滤波

中值滤波 取中位数&#xff0c;可以处理椒盐噪音 CV自带medianBlur函数dst cv2.medianBlur(src, ksize) 参数说明&#xff1a;1.src: 需要滤波的图片&#xff1b;2.ksize&#xff1a;核大小&#xff0c;必须是比1大的奇数【举个例子&#xff1a;3&#xff0c;5&#xff0c;7……

RISC-V RVWMO 内存模型解释

RISC-V RVWMO 内存模型解释 引言 本文介绍 RISC-V RVWMO 内存模型。RVWMO 内存模型定义了什么样的全局内存顺序才是合法的。本引言部分将解释为什么会出现不合法的全局内存顺序&#xff0c;以及为什么需要内存模型。 首先引起乱序的全局内存顺序&#xff08;指令重排序&…

10.多柱状图(MuliBarChart)

愿你出走半生,归来仍是少年&#xff01; 环境&#xff1a;.NET 7、MAUI 话接上回&#xff08;9.单柱状图&#xff08;SingleBarChart&#xff09;&#xff09;&#xff0c;从单柱拓展到多柱状图。 1.数据设置 private void InitValue(List<BasicSerieDto> dtos){Serie…

14.5 Flash查询和添加数据库数据

14.5 Flash查询和添加数据库数据 在Flash与数据库通讯的实际应用中&#xff0c;如何实现用户的登录与注册是经常遇到的一个问题。登录实际上就是ASP根据Flash提供的数据查询数据库的过程&#xff0c;而注册则是ASP将Flash提供的数据写入数据库的过程。 1.启动Access2003&…

C#,获取与设置Windows背景图片的源代码

为了满足孩子们个性化桌面的需求。 这里发布获取与设置Windows背景图片的源代码。 1 文本格式 using System; using System.IO; using System.Data; using System.Linq; using System.Text; using System.Drawing; using System.Collections; using System.Collections.Gene…

JeecgBoot集成TiDB,打造高效可靠的数据存储解决方案

TiDB简介 TiDB是PingCAP公司自主设计、研发的开源分布式关系型数据库&#xff0c;同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品&#xff0c;具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生…

基数排序算法

1. 排序算法分类 十种常见排序算法可以分为两大类&#xff1a; 比较类排序&#xff1a; 通过比较来决定元素间的相对次序&#xff0c;由于其时间复杂度不能突破O(nlogn)&#xff0c;因此也称为非线性时间比较类排序。比较类排序算法包括&#xff1a;插入排序、希尔排序、选择…

第139期 做大还是做小-Oracle名称哪些事(20240125)

数据库管理139期 2024-01-25 第139期 做大还是做小-Oracle名称哪些事&#xff08;20240125&#xff09;1 问题2 排查3 扩展总结 第139期 做大还是做小-Oracle名称哪些事&#xff08;20240125&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文&#xff09; Oracle A…

SQL - 事务控制

SQL - 事务控制 文章目录 SQL - 事务控制TCL - 事务事务的边界事务的特性事务的应用 事务隔离等级MySQL支持四种隔离级别 TCL - 事务 **模拟场景&#xff1a;**生活当中转账是转账方账户扣钱&#xff0c;收账方账户加钱。用数据库操作来模拟现实转账。 数据库模拟&#xff1a…

CI/CD

介绍一下CI/CD CI/CD的出现改变了开发人员和测试人员发布软件的方式,从最初的瀑布模型,到最后的敏捷开发(Agile Development),再到今天的DevOps,这是现代开发人员构建出色产品的技术路线 随着DevOps的兴起,出现了持续集成,持续交付和持续部署的新方法,传统的软件开发和交付方…

软件设计师——软件工程(五)

&#x1f4d1;前言 本文主要是【软件工程】——软件设计师——软件工程的文章&#xff0c;如果有什么需要改进的地方还请大佬指出⛺️ &#x1f3ac;作者简介&#xff1a;大家好&#xff0c;我是听风与他&#x1f947; ☁️博客首页&#xff1a;CSDN主页听风与他 &#x1f304…

安全防御综合组网实验

题目 要求 生产区在工作时间可以访问服务器区&#xff0c;仅可以访问http服务器。办公区全天可以访问服务器区&#xff0c;其中10.0.2.20 可以访问FTP服务器和http服务器。10.0.2.10仅可以ping通10.0.3.10。办公区在访问服务器区时采用匿名认证的方式进行上网行为管理。办公区…

【RabbitMQ】死信(延迟队列)的使用

目录 一、介绍 1、什么是死信队列(延迟队列) 2、应用场景 3、死信队列(延迟队列)的使用 4、死信消息来源 二、案例实践 1、案例一 2、案例二&#xff08;消息接收确认 &#xff09; 3、总结 一、介绍 1、什么是死信队列(延迟队列) 死信&#xff0c;在官网中对应的单词…

Unity学习之坦克游戏制作(2)游戏场景的制作

文章目录 1. 基础场景的搭建2. 游戏主面板2.1 拼出面板2.2 创建新面板2.3 设置面板复用2.4 退出界面 3. 坦克基类3.1 创建基类脚本3.1.1 基类基本属性3.1.2 抽象开火函数3.1.3 受伤虚函数3.1.4 死亡虚函数 4 玩家——基础移动旋转摄像机跟随4.1 玩家对象脚本4.2 控制坦克移动4.…

移动端打包成功后禁止生成 report.html 文件,并不自动打开该文件

目录 【问题】移动端 npm run build 打包后生成并打开 report.html 文件package.json 文件vue.config.js 代码 【解决】打包后去除 report.html 文件vue.config.js 代码 参考 【问题】移动端 npm run build 打包后生成并打开 report.html 文件 package.json 文件 {"name&…

蓝牙----蓝牙协议栈L2CAP

蓝牙协议栈----L2CAP L2CAP的功能术语介绍L2CAP信道L2CAP的工作模式经典蓝牙的分段和分解过程 L2CAP—逻辑链路控制和适配层协议 L2CAP的功能 经典蓝牙的L2CAP层实现了协议复用、数据分段与重组、封装调度等操作。BLE的L2CAP层是经典蓝牙L2CAP层的简化版本&#xff1a; 在基…

爬虫js逆向分析——x平台(实现)

爬虫js逆向分析——x平台&#xff08;实现&#xff09; &#xff08;仅供学习&#xff0c;本案例只是分析流程没有账号&#xff09;网址&#xff1a;https://xuexi.chinabett.com/ 1.分析请求包格式 打开控制台&#xff0c;并勾选保存日志&#xff0c;然后点击登录看发送了什…

ICSpector:一款功能强大的微软开源工业PLC安全取证框架

关于ICSpector ICSpector是一款功能强大的开源工业PLC安全取证框架&#xff0c;该工具由微软的研究人员负责开发和维护&#xff0c;可以帮助广大研究人员轻松分析工业PLC元数据和项目文件。 ICSpector提供了方便的方式来扫描PLC并识别ICS环境中的可疑痕迹&#xff0c;可以用于…