redis 主从复制 哨兵 安装部署

news2024/9/20 10:40:56

学习开始前先了解一下

Redis是一个开源的内存数据结构存储系统,它支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等。Redis最大的特点是数据存储在内存中,因此读写速度非常快,同时也支持数据持久化,可以将数据保存到磁盘中,以便在服务器重启后恢复数据。 Redis的应用场景非常广泛,包括缓存、消息队列、计数器、排行榜、分布式锁等。Redis还支持发布/订阅模式,可以用于实现实时消息推送等功能。

Redis的优点包括: 1. 高性能:Redis的数据存储在内存中,读写速度非常快。 2. 多种数据结构:Redis支持多种数据结构,可以满足不同的应用需求。 3. 数据持久化:Redis支持数据持久化,可以将数据保存到磁盘中,以便在服务器重启后恢复数据。 4. 分布式:Redis支持分布式部署,可以通过主从复制和集群模式实现高可用性和扩展性。 5. 开源:Redis是开源的,可以自由使用和修改。

Redis的缺点包括: 1. 内存限制:由于Redis的数据存储在内存中,因此需要考虑内存限制,否则可能会导致服务器宕机。 2. 数据一致性:由于Redis的主从复制和集群模式存在一定的延迟,因此需要考虑数据一致性的问题。 3. 单线程:Redis是单线程的,因此在高并发场景下可能存在性能瓶颈。 总的来说,Redis是一个非常优秀的内存数据结构存储系统,具有高性能、多种数据结构、数据持久化、分布式等优点,广泛应用于各种场景中。

 主从复制

Redis 主从复制是指将一个 Redis 服务器(主节点)的数据复制到其他 Redis 服务器(从节点)的过程。主节点负责写入数据,从节点负责读取数据,从而实现数据的高可用性和读写分离。

搭建环境:关闭防火墙 确认网段

这里有三台演示机

 1.相同操作:也就是不管多少台机都要做的操作

(1):安装redis         命令 yum -y install redis

(2):配置文件          命令 vim /etc/redis.conf             

     bing 0.0.0.0

     daemonize yes

 进入redis 

   redis-cli

 第一台查看         info replication

 第二台    

127.0.0.1:6379>slaveof 192.168.1.129 6379

127.0.0.1:6379> info replication
# Replication
role:slave
master_host:192.168.1.129
master_port:6379
master_link_status:down
master_last_io_seconds_ago:-1
master_sync_in_progress:0
slave_repl_offset:71
master_link_down_since_seconds:25
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

 这条命令的意思是将当前的 Redis 服务器设置为另一个 Redis 服务器的从服务器。具体来说,它将当前 Redis 服务器的复制模式设置为从服务器,并将主服务器的 IP 地址和端口号设置为 192.168.1.129 和 6379。这样,当前 Redis 服务器就会开始复制主服务器上的数据,并在主服务器更新数据时同步更新自己的数据。

 第三台       和上一台一样

127.0.0.1:6379>slaveof 192.168.1.129 6379

127.0.0.1:6379> info replication
# Replication
role:slave
master_host:192.168.1.129
master_port:6379
master_link_status:down
master_last_io_seconds_ago:-1
master_sync_in_progress:0
slave_repl_offset:71
master_link_down_since_seconds:25
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

 第一台在查看

 测试第一台也就是主库是否有创建功能

 其他两台查看     他们都是没有创建功能的

 

 主从复制好了 但要和哨兵搭配才是高可用

主从复制的实现过程如下: 1. 主节点将写入的数据同步到从节点; 2. 从节点接收到数据后,将数据写入自己的数据库中; 3. 从节点定期向主节点发送同步请求,获取主节点最新的数据; 4. 如果主节点宕机,从节点会自动选举一个新的主节点。

主从复制的优点包括: 1. 数据高可用性:当主节点宕机时,从节点可以自动接管主节点的工作,保证数据的可用性; 2. 读写分离:主节点负责写入数据,从节点负责读取数据,可以有效地分担主节点的负载; 3. 数据备份:从节点可以作为主节点的备份,当主节点数据丢失时,可以通过从节点进行数据恢复。 需要注意的是,主从复制并不能保证数据的实时同步,因为从节点需要定期向主节点发送同步请求,获取最新的数据。如果需要实时同步数据,可以考虑使用 Redis 集群。

2.启动哨兵

所有哨兵操作

vim /etc/redis-sentinel.conf

daemonize yes     加上这一行

sentinel monitor mymaster 192.168.1.139 6379 2      更改成主的IP

 主机和哨兵启动服务 systemctl start redis-sentinel

测试

关闭主机

127.0.0.1:6379> shutdown
not connected>

 两台从机宕机 等一会

 

在查看 第三台自动变成主了

127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

第二台自动切换过去了

 拜拜

 

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

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

相关文章

吐血整理,接口自动化测试-Config配置文件框架封装(实战)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 configparser的介…

阿里巴巴2023最新版Spring Security王者晋级文档

Spring 是一个非常流行和成功的 Java 应用开发框架。Spring Security 是 Spring 家族中的一个安全管理框架,提供了一套 Web 应用安全性的完整解决方案。在用户认证方面,Spring Security 框架支持主流的认证方式,包括 HTTP 基本认证、HTTP 表单…

输出一个数的十六进制表示

可以使用Integer.toHexString、Long.toHexString得到数值的十六进制表示。 下面的代码示例列出了几种情况: public class Test5 {public static void main(String[] args) {byte b1 0b01101111; System.out.println(Integer.toHexString(b1).toUpperCase());byte…

深度学习的实践层面

目录 1、训练、验证、测试集 2、偏差、方差 3、正则化 4、dropoout正则化 5、其他正则化方法 6、归一化输入 7、梯度消失和梯度爆炸 8、梯度的数值逼近 9、梯度检验 1、训练、验证、测试集 (1)、早期机器学习领域普遍认可的最好的实践方法&…

海兰一体机电脑U盘重装Win10系统教程图解

海兰一体机电脑是全家人都适用的电脑,使用海兰一体机电脑的用户要怎么用U盘来重装Win10系统,首先用户需要确保电脑能够正常联网,然后再准备一个8G以上的U盘,最后根据小编分享的海兰一体机电脑U盘重装Win10系统教程图解操作即可。 …

PR脚本:音乐鼓点自动节拍打点标记动画BeatEdit

BeatEdit可检测音乐中的节拍并在Premiere Pro时间轴中为其生成标记。可以创建与音乐同步的自动编辑,或者让BeatEdit v2.0.006 激活版协助您进行手动编辑过程。BeatEdit mac版使用节拍信息来生成与音乐同步的全自动编辑。如果需要更多控制,拍子标记也可以…

视唱音准不好的人能练好吗,视唱音准不好怎么办

软件版本:Earmaster7.3.6 无论是普通人还是声乐艺术生,音准是唱好歌的必要条件之一,如果音准不好,唱歌自然会跑调。然而并不是所有人天生都有十分出色的音准,如果不进行后天的训练,是很难找到正确的音准的…

web应用封装成app|超级签名

PP封装是形成APP的最省钱的一种方式。你只需要拥有一个网址就可以通过一些技术处理封装成一个跨iOS和Android的APP,这个过程往往只需要几分钟。在移动互联网时代,拥有一个移动端APP是必不可少的。那么APP是怎样封装的呢? 首先让我们先来了解…

基于深度学习的人脸面部表情识别系统【含Python源码+PyqtUI界面+原理详解】

功能演示 摘要:面部表情识别(Facial Expression Recognition)是一种通过技术手段识别人物图像中人脸面部表情的技术。本文详细介绍了其实现的技术原理,同时给出完整的Python实现代码、训练好的深度学习模型,并且通过Py…

Python中的四种条件语句结构和应用举例

Python中的四种条件语句结构和应用举例 条件语句是计算机实现分类高效执行计算的重要方法。在许多计算机语言编写(C语言,Java语言,matlab语言等)的时候,都有涉及条件语句的部分,本文对Python语言中的条件语…

Docker操作镜像与容器常用命令

Docker操作镜像与容器的常用命令 文章目录 Docker操作镜像与容器的常用命令前言1、镜像相关命令1.1 查看镜像1.2 搜索镜像1.3 拉取镜像1.4 删除镜像 2 容器相关命令2.1 查看容器2.2 创建与启动容器2.3 停止与启动容器2.4 文件拷贝2.5 目录挂载2.6 查看容器IP地址2.7 删除容器 总…

金山云联合MiniMax推出MaaS互信推理专区方案 解决大模型与数据互信难题

作为人工智能领域颇具里程碑式的进展,ChatGPT以其惊艳的表现,迅速掀起了行业热潮,使得大模型成为当下最为炙手可热的技术方向之一。但在大模型落地过程中,如何既能保障大模型使用方的数据安全,又能保护大模型提供方的部…

C编译过程 以及 ELF文件(学习笔记)

C编译过程 一个用C语言编写的高级语言程序是从编写到打包、再到编译执行的基本过程,我们知道在CPU上执行的是低级别的机器语言,从高级语言到低级别的机器语言肯定是要经过翻译过程,这个过程大体的过程如下图所示: 在Unix系统中,从…

基于simulink的四节串联锂电池的主动均衡算法(PID控制)

电动汽车往往搭载上百节单体电池作为能量来源,如此多的电池聚在一起其性能差异往往造成电量的不一致。不均衡性会随着电池的充放电循环而不断加剧,致使单体容量快速衰减,最终个别单体的失效就会影响整个电池组乃至用电系统的工作。常见的均衡方式可分为主动均衡和被…

亚马逊云科技“专库专用”模式,可有效提高数据库的性能和效率

近日,全球数据库市场发生了一件令人瞩目的事件,根据Gartner的数据,我们发现亚马逊云科技作为一个纯云厂商,夺得了2022年全球数据库领导者的桂冠,占据全球市场的25.3%份额。 云原生数据库的发展方向:与数据分…

深度剖析PostgreSQL慢SQL:原因与优化方案大揭秘

​ PostgreSQL 是一种成熟稳定的关系型数据库管理系统,它支持高级的数据类型、索引以及查询语言。但是,尽管 PostgreSQL 在性能和可靠性方面表现出色,但偶尔也会出现慢 SQL 的情况。本文将探讨 PostgreSQL 慢 SQL 的原因和优化方案&#xff0…

Qt安卓AMD64-v8a配置OpenCV4.5.2

1.OpenCV官方网下载OpenCV的安卓平台SDK并解压 在工程的配置pro文件中添加opencv包含路径INCLUDEPATH与库LIBS unix {ANDROID_OPENCV = C:\Users\dev2\Desktop\OpenCV-android-sdk\sdk\nativeINCLUDEPATH += $$ANDROID_OPENCV/jni/include/opencv2 \$$ANDROID_OPENCV/jni/in…

进行网站建设,开启数字化时代的新篇章

在当今数字化时代,拥有一个个人或企业网站已经成为了非常普遍的需求。网站可以帮助你展示自己或品牌的形象、提供各种服务和信息,甚至是进行在线销售等,这些都是传统媒体所无法比拟的优势。 网站建设是什么? 网站建设是指在互联…

LaravelPHP笔记-转json后中文变成\u数据

用 PHP 的 json_encode 来处理中文的时候,中文都会被编码,变成不可读的,类似”\u***” 的格式,如果想汉字不进行转码,可用如下方法: 在json_encode第二个参数添加JSON_UNESCAPED_UNICODE。 如下代码&…

dsl语句查询elasticsearch集群节点分布和资源使用情况

查询语句如下(本文是直接在kibana里面执行的哦) GET _cat/nodes?v执行结果 这样就可以很直观的看到,es部署在了哪些节点上,以及各节点资源分布使用