Redis学习(8)-redis持久化
内存(兔子):高效,断电数据丢失
硬盘(乌龟):读写速度慢于内存的,断电数据依旧存在
持久化:把数据保存在硬盘上
关系型数据库:MySQL-持久化:
- 任何操作都是硬盘上,断电以后,硬盘上数据还在。
非关系型数据库:redis
- 增删改查,数据都是在内存上进行操作。
- 断电后内存中的数据不存在。
- 断电后:redis的部分数据会丢失,丢失的数据是保存在内存中的,部分保存在硬盘上
- redis存在持久化操作
Redis两种持久化策略:RDB,AOF
默认持久化机制:RDB
RDB:使用快照方式保存数据
RDB相当于快照,保存的仅是一种状态。
20G数据--> 几Kb快照

优点:
1,快照保存数据速度极快,还原数据速度极快。
2,适用于灾难备份(rdb文件小,备份rdb文件速度很快)。
缺点:
RDB机制符合要求就会照快照(随时随地启动),会占用一定系统资源(突然的),很可能内存不足,直接宕机(宕机后,服务器关闭,非正常关闭,内存中的数据也因此没了)。
适用于:内存比较充裕的计算机。
RDB何时进行照快照:
1,服务器关闭时,照快照。 ./bin/redis-cli shutdown
2,key满足一定条件,会照快照。

AOF:使用日志功能保存数据操作
redis同步了三种同步策略:每秒同步,每修改同步,和不同步。
AOF配置:
no 不同步:高效,但是不进行持久化(默认)
everysec 每秒同步:每秒进行一次AOF保存数据
always 每修改同步:只要有key变化语句,就进行AOF保存数据。
适用于:内存空间较小的计算机。
AOF操作:只会保存导致key变化的语句。
启用AOF
修改redis.conf,配置文件,如下俩个截图:

策略选择:

优点:
1,持续性占用极少量的内存资源。
缺点:
1,日志文件会比较大。
2,不适用于灾难容灾(日志文件大,拷贝慢)
Redis学习(8)-redis持久化的更多相关文章
- redis学习系列——redis持久化
1.写操作的流程 2.RDB快照-redis的第一个持久化策略 第一种是以快照的形式持久化到本地磁盘(RDB文件). 持久化策略是: 1.配置(save N M)在N秒内,redis至少发生M次修改, ...
- Redis学习笔记9--Redis持久化
redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化.redis支持四种持久化方式,一是 Snapshotting(快照)也是默认方式:二是Appen ...
- Redis学习-redis概述
最近刚刚接触了redis技术,对此有一些了解,这是简单做一点总结. Redis简介 首先,简单了解一下NoSQL(Not only sql),不要错误的理解为:没有SQL,而是不仅仅是SQL.NoSQ ...
- redis学习之——redis.conf配置(基本)文件学习
# Redis configuration file example # Note on units: when memory size is needed, it is possible to sp ...
- Redis学习笔记~Redis主从服务器,读写分离
回到目录 Redis这个Nosql的存储系统一般会被部署到linux系统中,我们可以把它当成是一个数据服务器,对于并发理大时,我们会使用多台服务器充当Redis服务器,这时,各个Redis之间也是分布 ...
- redis学习笔记-redis的安装
Window 下安装 下载地址:https://github.com/MSOpenTech/redis/releases Redis 支持 32 位和 64 位.这个需要根据你系统平台的实际情况选择, ...
- Redis学习笔记-Redis内部数据结构
Redis内部数据结构 Redis和其他key-value数据库的很大区别是它支持非字符串类型的value值.它支持的value值的类型如下: sds (simple dynamic string) ...
- redis学习三 redis持久化
1,快照持久化 1简介 redis可以通过创建快照来获得某个时间点上的内存内容的数据副本,有了副本之后,就可以将副本发送到其他redis服务器上从而创建相同数据的从服务器,同时快照留在原 ...
- Redis学习笔记(一)-持久化
一.RDB持久方式 RDB持久化是把当前进程的数据已快照的形式保存到硬盘的过程. 触发方式: 1.手动触发命令:save和bgsave save:阻塞式,内存较大的实例在执行过程中会造成长时间的阻塞, ...
- Redis学习笔记--Redis数据过期策略详解
本文对Redis的过期机制简单的讲解一下 讲解之前我们先抛出一个问题,我们知道很多时候服务器经常会用到redis作为缓存,有很多数据都是临时缓存一下,可能用过之后很久都不会再用到了(比如暂存sessi ...
随机推荐
- 用最简单的例子理解模板方法模式(Template Method Pattern)
假设要做一道红烧肉,做法有很多,在不同的做法中都有相同的部分,比如都要放油.放肉.放调料等.也有不同之处,比如有些做法放可乐,有些做法放甜蜜酱,等等. 先提炼出一个抽象类,该类不仅有制作红烧肉的各个步 ...
- 报错:不允许保存更改。您所做的更改要求删除并重新创建以下表……
在使用SQL Server 2008为某个表添加列的时候出现启用了"阻止保存要求重新创建表的更改问题的设置方法..."报错: 解决方法: 工具--选项--Designers-- ...
- 扩展redisTemplate实现分布式锁
原文:https://blog.csdn.net/qq1010267837/article/details/79697572 依赖jar包 compile group: 'redis.clients' ...
- MultipartFile+nio上传文件
import java.io.File;import java.nio.file.Files;import java.nio.file.Path;import java.nio.file.Paths; ...
- .net上开发winform
c++用WinForm做界面的实现 因为笔者是以前是做C#的,对Winform情有独钟,最近想转C++,想把以前的一些Delphi转成c++,MFC我不熟而且用起来相当烦效果又丑,GTK图形库用起来太 ...
- velocity+spring mvc+spring ioc+ibatis初试感觉(与struts+spring+hibernate比较)
velocity+spring mvc+spring ioc+ibatis框架是我现在公司要求采用的,原因是因为阿里巴巴和淘宝在使用这样的框架,而我公司现在还主要是以向阿里巴巴和淘宝输送外派人员为 主 ...
- Jersey 框架取到所有参数的方法
/** * 测试post取参数 * * @return */ @POST @Consumes("application/x-www-form-urlencoded") p ...
- C语言:使用realloc函数对malloc或者calloc动态分配的内存大小进行扩展
#include<stdio.h> #include<stdlib.h> #include<time.h> typedef struct { char name[3 ...
- Android之ViewPager循环Demo
ViewPager是谷歌官方提供的兼容低版本安卓设备的软件包,里面包含了只有在安卓3.0以上可以使用的api.Viewpager现在也算是标配了,如果一个App没有用到ViewPager感觉还是比较罕 ...
- 伪元素 :Before 和 :After的学习
层叠样式表(CSS)的主要目的是给HTML元素添加样式,然而,在一些案例中给文档添加额外的元素是多余的或是不可能的.事实上CSS中有一个特性允许我们添加额外元素而不扰乱文档本身,这就是“伪元素”. 你 ...