redis数据库与主从复制

目录

一 基本操作

二 执行流程

三 reids持久化

四 rdb和aof持久化的过程

五 为什么会有内存碎片

六 redis组从复制


一 基本操作

set :存放数据 例如 set 键值 内容   set k kokoko  k就是键值 kokoko就是内容
get:获取数据  例如 get k  就会出来 k对应的数据
keys 查询键值对 keys * 就是查询所有的键值 
exists 查询键值是否存在   exists k 键值存在就返回1
del 键值 删除指定的键值对
type 键值 查询键值对应的数据类型 strings字符串 lists列表 hashes哈希值 sets有序等
rename 原键值 目标键值 原键值替换目标键值内容也进行替换
renamenx 键值 新键值  对键值进行改名 
dbsize 查看数据库中的键值数目
config set requirepass 密码  给数据库设密码  auth 密码  登陆数据库
config get requirepass 查看密码  只有登陆上去才会显示
select 序号 切换库
move 键值 库号   把 键值移动到库号中
flushdb 清空当前数据库flushall 清空全部数据库

二 执行流程

1.redis父进程首先判断是否执行save,bgsave,bgrewriteaof的子进程,如果执行会返回命令
2.父进程执行fork操作子进程,这个过程中父进程是阻塞的,redis不能执行客户端的任何命令
3.父进程执行fork后,生成进程备份后不在阻塞父进程,客户端可以响应其他命令
4.子进程创建rdb文件,根据父进程内存生成临时快照文件,完成后对源文件进行替换
5.子进程完成备份,向父进程发送信号表示完成,父进程更新统计信息

三 reids持久化

1.rdb和aof的基本理解
rdb周期性的把内存中的数据保存在磁盘中
aof 从redis的操作日志记录中将执行的过程同步到磁盘中

四 rdb和aof持久化的过程

rdb1
从内存中写入磁盘中保存
写入磁盘中会进行压缩来减少.rdb占磁盘的大小
aof
在内存中append追加到缓冲区 来调用cpu资源写在磁盘中操作日志的执行语句追加到缓冲区 掉用cpu写入磁盘
会周期性的进行重写
 rdb和aof的触发方式
rdb 手动触发
自动触发save m n
特殊触发  stop关闭会触发 shutdown不会触发 kill不会触发
aof
手动触发
自动触发 每条进行触发  每秒进行触发  不触发rdb优先级        如果开启aof会先aof 没有开启就是rdb

五 为什么会有内存碎片

1.储存数据时系统申请的空间比实际需求大一点
2.频繁更改数据

六 redis组从复制

要装主从复制需要三台机器一主两备

 

主master的设置

 从的设置

 

 另外一个也是一样的设置

在主master上验证从节点

redis-cli info replication

 

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

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

相关文章

SFP3012A-ASEMI代理海矽美(MHCHXM)快恢复二极管

编辑:ll SFP3012A-ASEMI代理海矽美(MHCHXM)快恢复二极管 型号:SFP3012A 品牌:ASEMI 芯片个数:1 芯片尺寸:102MIL*2 封装:TO-247AC 恢复时间:75ns 工作温度&#…

开源快速开发平台:做好数据管理,实现流程化办公!

做好数据管理,可以提升企业的办公协作效率,实现数字化转型。开源快速开发平台是深受企业喜爱的低代码开发平台,拥有多项典型功能,是可以打造自主可控快速开发平台,实现一对一框架定制的软件平台。在快节奏的社会中&…

【亲测可用】Linux上安装Redis教程

一、下载并解压Redis 1、执行下面的命令下载redis: wget https://download.redis.io/releases/redis-6.2.6.tar.gz 2、解压redis: tar xzf redis-6.2.6.tar.gz 3、移动redis目录,一般都会将redis目录放置到 /usr/local/redis目录&#xff1a…

SpringBoot 对接微信公众号模板消息通知

效果图见测试结果,有问题评论 模板消息 开通模板消息功能 登录微信公众平台开通模板消息功能 (未开通时) 添加模板消息 审核通过后,登录微信公众平台,点击 广告与服务 --> 模板消息公众号如果未设置服务类目,则需要先设置服…

golang 中的 cronjob

引言 最近做了一个需求,是定时任务相关的。以前定时任务都是通过 linux crontab 去实现的,现在服务上云(k8s)了,尝试了 k8s 的 CronJob,由于公司提供的是界面化工具,使用、查看起来很不方便。于是有了本文&#xff0c…

【iOS】Cocoapods的安装以及使用

文章目录 前言一、Cocoapods的作用二、安装Cocoapods三、使用Cocoapods总结 前言 最近笔者在仿写天气预报App时用到了api调用数据,一般的基本数据类型我们用Xcode中自带的框架就可以转换得到。但是在和风天气api中的图标的格式为svg格式。 似乎iOS13之后Xcode中可…

mybatis_分页

目的&#xff1a; 减少数据处理量&#xff0c;提高效率 普通sql&#xff1a; 语法&#xff1a;select * from user limit startIndex,pageSize; SELECT * from user limit 3; #[0,n] mybatis_sql: 接口&#xff1a; //分页查询List<User> getUserByLimit(Map<…

如何提高代码效率——时间复杂度与空间复杂度——【C语言】

当我们面对一个问题时&#xff0c;会有许多种解题思路。我们现在的计算机技术已经达到非常先进的地步&#xff0c;所以当我们用不同的方法对待问题时&#xff0c;时间差异不会很明显&#xff0c;内存差异我们一般在平常小问题时感受不到&#xff0c;所以我们不会去纠结程序的优…

JavaEE——Bean的生命周期

目录 1、实例化Bean 2、设置Bean的属性 3、初始化Bean &#xff08;1&#xff09;、执行通知 &#xff08;2&#xff09;、初始化的前置方法 &#xff08;3&#xff09;、初始化方法 &#xff08;4&#xff09;、执行自定义方法 &#xff08;5&#xff09;、初始化的后置…

短视频账号矩阵系统源码开发部署路径

一、短视频批量剪辑的开发逻辑算法 1.视频剪辑之开发算法 自己研发视频剪辑是指通过对视频素材进行剪切、调整、合并等操作&#xff0c;利用后台计算机算法&#xff0c;进行抽帧抽组抽序进行排列以达到对视频内容进行修改和优化的目的。自己研发的视频剪辑工具可以通过后台码…

iOS中的一些锁

多线程在日常开发中能起到性能优化的作用&#xff0c;但是一旦没用好就会造成线程不安全&#xff0c;本文就来讲讲如何保证线程安全 锁 线程安全 当一个线程访问数据的时候&#xff0c;其他的线程不能对其进行访问&#xff0c;直到该线程访问完毕。简单来讲就是在同一时刻&a…

单片机中的通用LED驱动

前言 项目中需要用到很多的LED灯&#xff0c;存在不同的闪烁方式&#xff0c;比如单闪&#xff0c;双闪&#xff0c;快闪&#xff0c;慢闪等等&#xff0c;我需要一个有如下特性的LED驱动 方便的增加不同闪烁模式可以切换闪烁模式增加LED数目不会有太多的改动方便移植&#x…

【C++杂货铺】模板(文末有彩蛋哟)

文章目录 一、泛型编程二、函数模板2.1 函数模板的原理2.2 函数模板的实例化2.3 模板参数的匹配原则 三、类模板四、非类型模板参数五、模板的特化5.1 函数模板特化5.2 类模板特化 六、模板分离编译七、模板总结好书推荐&#x1f381;彩蛋 一、泛型编程 &#x1f4d6;实现一个…

Spring Boot单元测试入门指南

Spring Boot单元测试入门指南 JUnit是一个成熟和广泛应用的Java单元测试框架&#xff0c;它提供了丰富的功能和灵活的扩展机制&#xff0c;可以帮助开发人员编写高质量的单元测试。通过JUnit&#xff0c;开发人员可以更加自信地进行重构、维护和改进代码&#xff0c;同时提高代…

volley 学习笔记1--发送请求

一、概览 Volley 具有以下优势&#xff1a; 自动网络请求调度。 多个并发网络连接。 透明磁盘和具有标准 HTTP 缓存一致性的内存响应缓存。 支持请求优先级。 取消请求 API。您可以取消单个请求&#xff0c;也可以设置要取消的请求的时间段或范围。 可轻松自定义&#xff…

linux下i2c调试神器i2c-tools安装及使用

i2c-tools介绍 在嵌入式linux开发中&#xff0c;有时候需要确认i2c硬件是否正常连接&#xff0c;设备是否正常工作&#xff0c;设备的地址是多少等等&#xff0c;这里我们就需要使用一个用于测试I2C总线的工具——i2c-tools。 i2c-tools是一个专门调试i2c的开源工具&#xff…

Kafka 入门到起飞系列 - 消费者组管理、位移管理

消费者组 - Consumer Group 上文我们已经讲过消费者组了&#xff0c;我们知道消费组的存在可以保证一个主题下一个分区的消息只会被组内一个消费者消费&#xff0c;从而避免了消息的重复消费 什么是消费组 - Consumer Group&#xff1f; 消费者组是Kafka 提供的可扩展且具有容…

事后多重比较方法

一、案例介绍 由单因素方差分析案例中&#xff0c;为研究郁金对低张性缺氧小鼠存活时间的影响&#xff0c;将36只小鼠随机生成A、B以及 C 三组&#xff0c;每组12个&#xff0c;雌雄各半&#xff0c;分别以10g/kg、20g/kg、40g/kg三种不同剂量的郁金灌胃&#xff0c;各组小鼠均…

从原理到实践,分析 Redisson 分布式锁的实现方案(二)

上篇讲解了如何用 Redis 实现分布式锁的方案&#xff0c;它提供了简单的原语来实现基于Redis的分布式锁。然而&#xff0c;Redis作为分布式锁的实现方式也存在一些缺点。本文将引入Redisson来实现分布式锁。 一、Redisson是什么 Redisson是一个基于Redis的分布式Java框架。它提…

信息安全:网络安全体系 与 网络安全模型.

信息安全&#xff1a;网络安全体系 与 网络安全模型. 网络安全保障是一项复杂的系统工程&#xff0c;是安全策略、多种技术、管理方法和人员安全素质的综合。一般而言&#xff0c;网络安全体系是网络安全保障系统的最高层概念抽象&#xff0c;是由各种网络安全单元按照一定的规…