一看就会的Redist数据持久化之RDB
RDB和AOP解决的问题
由于redist是内存型数据库,有时候可能出现redis挂掉而导致缓存丢失的问题,RDB 和 AOP 都是为了解决这个问题,也是redis官方提出的两种数据持久化方案。redis官网
RDB
RDB持久化 按指定的时间间隔
执行数据集的时间点快照。将rdb文件存储在配置文件中指定的文件目录,若存在则直接加载rdb文件中的数据,若不存在则创建一个新的
,也是redis配置文件中默认开启的。
优点
- 适合大规模的数据恢复
- 对数据完整性和一致性要求不高
缺点
在一定间隔时间做一次备份,所以如果redis意外down掉的话,就 会丢失最后一次快照后的所有修改
Fork的时候,内存中的数据被克隆了一份,大致2倍的膨胀性需要考虑
康康官网的
测试案例
1、修改保存规则
改为30s内有5个key发生变化就保存一次
修改rdb文件位置
2、使用修改后的配置文件启动服务
# 启动服务
./redis-server /root/myredis/redisRDB.conf
# 进入客服端
./redis-cli
单纯启动是看不到rdb文件的,当执行任何读写命令后(第一次可执行 flushall 产生一个空的 rdb 文件),可以看到会在指定的目录中生成 rdb 文件
3、添加数据测试
因为在配置文件中配置的是 5s 内若有5个key发生变化,就会进行一次保存,所以这里测试的也是五个 key
等待30s后,再一次查看可以看到 rdb 文件变大了,说明把 key 进行了一次存储
4、模拟挂掉的情况
# 停止服务
./redis-cli shutdown
# 重新启动
./redis-server /root/myredis/redisRDB.conf
# 进入redis-cli
./redis-cli
# 查看key
keys *
可以看到这些 key 被保存到了rdb文件中,从而实现了数据的持久化
一看就会的Redist数据持久化之RDB相关推荐
- 一看就会的Redist数据持久化之AOP
上一篇文字介绍了redis持久化中RDB的使用,该篇文章主要介绍AOP的使用 AOF介绍 原理 以日志的形式来记录每个写操作,将Redis执行过的所有写指令记录下来(读操作不记录), 只许追加文件但不 ...
- 重启redis命令_redis系列之——数据持久化(RDB和AOF)
在数据库(如mysql)和缓存(如redis)的发展中,都会相互借鉴对方的长处来弥补自身的不足.比如mysql作为持久化数据库,为了提高数据的访问速度,会使用缓存技术,当一条sql查询完成后,mysq ...
- Redis 数据持久化之 RDB
我们知道 Redis 是内存数据库,它将自己的数据存储在内存中,如果它不想办法将数据存入磁盘中,那么当服务器进程退出或意外宕掉的时候,服务器中的数据也会消失. 为了解决这个问题, Redis 提供了 ...
- 老司机带你玩转面试(1):缓存中间件 Redis 基础知识以及数据持久化
引言 今天周末,我在家坐着掐指一算,马上又要到一年一度的金九银十招聘季了,国内今年上半年受到 YQ 冲击,金三银四泡汤了,这就直接导致很多今年毕业的同学会和明年毕业的同学一起参加今年下半年的秋招,这个 ...
- 仅需6步,教你轻易撕掉app开发框架的神秘面纱(5):数据持久化
遇到的问题 有的时候程序中需要全局皆可访问的变量,比如:用户是否登录,用户个人信息(用户名,地区,生日),或者一些其他信息如:是否是首次登录,是否需要显示新手引导等等. 其中有些数据需要持久化到本地硬 ...
- 数据持久化框架为什么放弃Hibernate、JPA、Mybatis,最终选择JDBCTemplate!
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 因为项目需要选择数据持久化框架,看了一下主要几个流行的和不流行的框 ...
- 看完这篇还不懂Redis的RDB持久化,你们来打我!
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 一.为什么需要持久化 redis里有10gb数据,突然停电或者意外 ...
- Java 数据持久化系列之池化技术
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 在上一篇文章Java 数据持久化系列之JDBC中,我们了解到使用 ...
- docker容器运行mysql持久化_docker容器实现数据持久化的两种方式及其区别
前言 这篇博文是我对docker实现数据持久化几种方式的特征进行一个总结. 在docker中,它的存储文件系统是在dockerhost上原有的xfs或ext4架设了一层文件系统:overlay2(将此 ...
最新文章
- Spark Troubleshooting - Task not serializable问题分析
- Java的注解机制——Spring自动装配的实现原理
- CSS 字体(font)实例
- 安卓布局,GridLayout
- 传统节日海报PSD分层模板|年货礼品,传递年味温度
- Oracle dbms_job管理
- java实现阴历、阳历互相转换
- MATLAB实现AMI码和HDB3码
- 宿舍管理系统简单的增删改查
- 单片机测试开发板用什么软件,怎么知道单片机开发板的好坏
- lxr-0.3.1 源码阅读 How To.
- python陆股通_沪股通、深股通、港股通、陆股通都是什么鬼?傻傻分不清
- nav 计算机网络_Wi-Fi 6(802.11ax)解析9:双重NAV技术(Dueling NAVs)
- 中图杯获奖作品计算机组,“中图杯”第十四届环境地图大赛召开 地图慧成指定制图软件...
- 省时省力,高速收费站无线组网解决方案
- 中关村创业大街是贵重金属垃圾场,我捡到一只产品经理
- 如何在R中使用floor()和ceiling()函数
- 解决eclipse控制台不能正常输入问题的心路历程
- Wordpress REST API nginx访问/wp-json/ 返回404
- js爬取国家统计局行政区划(广东省)
热门文章
- Linux资源监控命令/工具(综合)
- 是否应该使用utf-8 bom——因DirectVobSub不支持utf-8 no bom带来的问题
- python 打开文件夹_python打开目录
- 【转载】简单好用的粉碎文件方法
- 网文快捕(CyberArticle) 快速保存网页内容,知识文档管理利器
- MJ0011技术分析:细数3721(雅虎助手)两年来的流氓升级史
- 好心情与爱谛科技战略合作签约,开启精神疾病定量治疗新篇!
- 365地图java_数字说话 中国最全的电子地图网站
- 《别告诉我你懂PPT》读书笔记
- 智和网管平台SugarNMS业务管控解决方案