redis内存淘汰和持久化_redis 持久化

一、RDB持久化

(一)、RDB介绍

可以在指定的时间间隔内生成数据集的 时间点快照(point-in-time snapshot),新快照会覆盖老快照

(二)、优点

压缩格式,恢复速度快,适合于用做备份,主从复制也是基于RDB持久化功能实现的

(三)、缺点

不是实时的,会有数据丢失,操作比较重量

(四)、原理

5e9b2caf7b7da7a7e78156d9c54cd221.png

(五)、配置方法

第一步:修改配置文件

vim /data/6379/redis.conf

#添加
dir /data/6379                  #持久化文件存储位置
dbfilename dump.rdb      #RDB持久化数据文件
save 900 1                        #900秒内如果有一次变更则进行一次持久化
save 300 10                      #300秒内如果有10次变更则进行一次持久化
save 60 10000                  #60秒内如果有10000次变更则进行一次持久化

第二步:重新启动redis

redis-cli -a 123456 shutdown 
redis-server /data/6379/redis.conf

注意事项

1、没配置save参数时

1.shutdown/pkill/kill都不会持久化保存

2.可以手动执行bgsave

3、配置save参数时

1.shutdown/pkill/kill均会自动触发bgsave持久化保存数据

2.pkill -9 不会触发持久化

3、恢复时

1.持久化数据文件名要和配置文件里定义的一样才能被识别

2.RDB文件只有一个数据文件,迁移和备份只要这一个RDB文件即可

二、AOF持久化

(一)、AOF介绍

AOF(append-only log file):记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集

AOF 文件中的命令全部以 Redis 协议的格式来保存,新命令会被追加到文件的末尾

(二)、优点

可以最大程度保证数据不丢

(三)、缺点

日志记录量级比较大,持久化时间较长

(四)、原理

b21f3b32485b415781177975725ae61b.png

(五)、配置方法

第一步:修改配置文件

vim /data/6379/redis.conf

#添加
appendonly yes            #开启AOF持久化
appendfilename "redis.aof"      #持久化存储文件
appendfsync always     #每次操作成功都执行一次持久化
#或者  建议设置
appendfsync everysec  #每秒钟提交一次持久化
#或者
appendfsync no            #不进行持久化

第二步:重启redis

redis-cli -a 123456 shutdown 
redis-server /data/6379/redis.conf

(六)、AOF重写机制

1、重写机制原理

(1)redis主进程通过fork创建子进程

(2)子进程根据当前redis内存中的数据生成数据库重建命令序列到临时文件中

(3)父进程继承client的新请求,把请求中的写操作继续追加至原来的AOF文件(而不是直接写入临 时文件,避免写操作失败带来的问题);额外地,这些新的写请求还会被放置于一个缓冲队列中

(4)子进程重写完成,会通知父进程,父进程把缓冲中的命令写到临时文件中

(5)父进程将临时文件替换掉旧的AOF文件

2、重写机制注意事项

和RDB一样,如果当前的数据量巨大,那么创建子进程的过程会很耗时。

在大数据的处理工作中,文件的删除也是一项比较麻烦的工作。

像我们普通的笔记本电脑,删除一个几GB的文件都是一项很耗时的工作,

更何况大数据的量级远远大过我们日常使用的数据。

所以在替换aof文件时,如果旧的aof很大,删除它也是一个很耗时的过程。

当然这并不是aof或者redis的缺点,只是可能会出现的一个客观情况

59098fc66a32cde461483782d577ce1c.png

AOF注意事项

1.aof修复命令不要⽤,因为他的修复⽅案⾮常粗暴,⼀⼑切,从出错的地⽅到最后全部删除

2.任何操作之前,先备份数据

三、redis 持久化方式有哪些?有什么区别?

rdb:基于快照的持久化,速度更快,一般用作备份,主从复制也是依赖于rdb持久化功能

aof:以追加的方式记录redis操作日志的文件。可以最大程度的保证redis数据安全,类似于mysql的binlog

四、save bgsave 区别?

共同点:都能实现redis持久化功能。

不同点:

SAVE: 前台,阻塞redis正常写入,直到持久化完成。

BGSAVE:后台,开启子线程,异步的持久化功能,不会阻塞redis正常写入。

五、AOF和RDB如何选择

1.开启混合模式

2.开启aof

3.不开启rdb

4.rdb采⽤定时任务的⽅式定时备份

5.可以从库开启RDB进⾏备份

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

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

相关文章

最新变态传奇android,新开变态传奇单职业

新开变态传奇单职业这款传奇手游中拥有这极为丰富的游戏玩法,玩家既可以进入各种副本中,挑战那些强大的副本boss,也可以和自己的兄弟好友们一起组队,前往各种跨服战场,和全服的高手玩家们一起进行最激烈的战斗。游戏中…

android手机微信收藏功能实现,Android模仿微信收藏文件的标签处理功能

最近需要用到微信的标签功能(如下图所示)。该功能可以添加已有标签,也可以自定义标签。也可以删除已编辑菜单。研究了一番。发现还是挺有意思的,模拟实现相关功能。该功能使用类似FlowLayout的功能。Flowlayout为一个开源软件(https://github.com/ApmeM/…

android 电话号码标记,强化电话标记功能 360手机卫士3.0安卓版体验

作为“房产商”,上海仁恒置地集团营销总监姚伟示通常每天也要接到20个左右房产或其他推销电话。“现在已经形成了一个机械的对应方式,对于此类推销电话,很多人包括我自己已经麻木了。”针对这种情况,360手机卫士发布了3.0.0正式版…

android 左滑按钮,android开发类似微信列表向左滑动按钮操作

话不多说,直接上代码,有详细的注释的。layout布局中:主要是跟大家说一下listview怎么写:android:id"id/pull_refresh_viewId"android:layout_width"match_parent"android:layout_height"match_parent&qu…

向量表示 运动抛物线_流动的美丽函数——抛物线浅谈

事先说明:笔者初三,如在叙述中有不严谨的地方,还请诸位指出,自当感激不尽。(本文默认受众对象为初高中生,因此抛物线一律采取了yax的形式,高中的同学们可以应用旋转矩阵把它变到y2px的形式QAQ笔…

android 获取已安装 错误代码,android获取手机已经安装的app信息

Android获取手机已安装APP(系统/非系统)效果图主体代码private ListView mlistview;private ListpackageInfoList;private ListapplicationInfoList;private MyAdapter myAdapter;private PackageManager pm;Overrideprotected void onCreate(Bundle savedInstanceState) {supe…

android与ios ui切图关系,APP-IOS与Android界面设计与切图

做一全套的APP设计,流程是:1、界面设计:设计IOS界面;设计Android界面。2、切图:切IOS的2倍图和3倍图;切Android的hdpi,xhdpi,xxhdpi这三个尺寸的图。3、标注:以px为单位标注IOS界面的尺寸&#…

android app应用后台休眠,安卓手机锁屏后程序自动关闭,怎么设置手机app允许锁屏后台运行...

原标题:安卓手机锁屏后程序自动关闭,怎么设置手机app允许锁屏后台运行安卓手机锁屏后,很多程序就会自动关闭,实际上,这是安卓手机的一种保护机制。为了使系统能够流畅稳定的运行以及更加省电,它都会在手机锁…

linux和windows和鸿蒙,linux很好,但为何大家都用Win,鸿蒙系统站错阵营了吗?

原标题:linux很好,但为何大家都用Win,鸿蒙系统站错阵营了吗?由目前已知信息可知,华为“鸿蒙系统”很可能基于linux开源程序搭建,这个特点与苹果微软由很大不同。苹果手机目前主要使用Objective-C程序语言开…

pos共识机制_OK区块链60讲 | 第17集:什么是PoS共识机制

什么是PoS共识机制https://www.zhihu.com/video/1196092110837805056《OK区块链60讲》是由OKEx&新浪科技联合出品的区块链科普动画视频,针对区块链零基础用户,通过系列文章、科普动画等形式,从概念、技术、应用等角度,…

ps导出gif颜色不对_PS基础知识(1)

视图平移命令:1,使用工具箱中的抓手工具或着(H)2按住空格键,上下左右移动视图。(常用方法)图像格式PSD:原始的图像文件,包含所有的 Photoshop 处理信息,如图层&#xff0…

音乐分享 html,支付宝朋友圈可以分享音乐嘛

打开手机,找到手机里面的支付宝应用点击进入在进入的支付宝界面里,选择底下的朋友点击进入在弹出的朋友界面选择生活圈选择生活圈下方的朋友动态进到朋友动态界面,点击右上角的照相机图标支付宝 怎么发朋友圈动态?进入支付宝页面中…

eplan单线原理图多线原理图_EPLAN-黑盒-2

3、黑盒的功能定义制作完成的黑盒仅仅图形化描述了一个变频器,它实现逻辑上的智能了吗?双击黑盒弹出属性标签,它的主标签还是现实黑盒,如图,图形和逻辑还没匹配。因此,必须为它重新定义功能。EPLAN的功能定…

html图片热点新窗口,HTML基础必看---表单,图片热点,网页划区和拼接详解

html表单里面的图片点击相应图片跳转到本页其他去在表格里面选了这个 鼠标点击一下跳转到相应区块 代码要怎么写,夜影驱动编程小编今天和大家分享大神需要在一张图片上设置多个能点击跳转的链接区域时,推荐使用网页的热点链接。 参考代码如下&#xff1a…

2021辽宁高考艺考成绩查询系统入口,2019年辽宁省艺考统考成绩查询官方入口

2019年辽宁省普通高等学校招生美术类、音乐舞蹈类专业统考成绩已经公布。考生可以通过以下方式查询美术类、音乐舞蹈类专业统考成绩:一、美术类专业统考合格分数线美术类本科专业统考合格分数线为185分,且3门科目中至少有2门各不低于60分;专科专业统考合…

微型计算机硬盘为什么要分区,为什么懂电脑的人,都说硬盘不需要分区?看完你就知道了...

你的电脑有多少个分区呢?当你拿到一台新电脑的时候,一般只能看到一个系统分区。这时候就会开始进行系统分区,将硬盘分为C、D、E等等盘符,用途也各不相同,系统盘,资料盘,娱乐盘等等。似乎所有人都…

php imagecreatefromjpeg图片太大_PHP图像处理技术及应用

基本图像处理技术1体理解:1,创建(得到)一个图像资源(resource)——它相当于一个“画板”(画布)2,在该画板上进行“绘制图线”;3,将该画布输出到网页上显示出来,或保存为图片文件。图像处理技术,…

年金系数用计算机怎么算,年金系数是什么?怎么计算?

【导读】年金是相等时间间隔收到或支付相同金额的款项,如年末收到养老金1万元即为年金。年金现值是按市场利率把发生期收到的各期年金利息折成现值汇总,现值系数是按利率每期收付一元钱折成现在的价值。年金系数是什么?首先说什么是年金&…

离人愁有用计算机怎么写歌词,离人愁歌词是什么意思 今两股痒痒什么意思

最近《离人愁》这首富含古风的歌曲可是大火,既然是古风,里边的歌词也是让大多网友不理解其中表达什么意思,进而不能好好体会作者写这首歌的意图,其实每个人对于这首歌曲还是有很多自己的理解的,现在小编就来介绍这首歌…

手机耗电统计app_华为手机有哪些功能关掉比较好?

阅读本文前,请您先点击上面的蓝色字体“野趣说”,再点击“关注”,这样您就可以继续免费收到文章了。每天都有分享,完全是免费订阅,请放心关注!现在的手机使用一年半左右就会出现卡顿的情况,这也…