redis RDB持久化[手工持久化]:

RDB持久化在指定的时间间隔内生成数据集的时间点快照[point-in-time snapshot]

优点: 速度快,适合于备份

缺点: 会有数据丢失

#正常没有做持久化时
[root@k8s-master1 6379]# redis-cli -h 10.0.0.63 -a 123
10.0.0.63:6379> set name timo
OK
10.0.0.63:6379> exit
[root@k8s-master1 6379]# redis-cli -h 10.0.0.63 -a 123
10.0.0.63:6379> get name
"timo"
没有shutdown时数据还在,现在执行shutdown
然后重新启动redis
10.0.0.63:6379> shutdown
not connected> exit
[root@k8s-master1 6379]# redis-server /nosql/redis/6379/redis.conf 登录进去后,查询设置的 timo 键值:
10.0.0.63:6379> get name
(nil)
此时为空。 #手工持久化[RDB持久化]:
[root@k8s-master1 6379]# redis-cli -h 10.0.0.63 -a 123
10.0.0.63:6379> set name01 timo
OK
10.0.0.63:6379> save
OK
10.0.0.63:6379> shutdown #关闭redis
not connected> exit 启动后查询:
[root@k8s-master1 6379]# redis-server /nosql/redis/6379/redis.conf
[root@k8s-master1 6379]# redis-cli -h 10.0.0.63 -a 123
10.0.0.63:6379> get name01
"timo"
此时就是做了手工持久化,使得数据保存了,在重启后依然存在。
我们知道没有持久化的数据都在内存中,一旦重启内存就被释放了,此时只有手工持久化才行。 save就是手工持久化。

redis RDB持久化条件配置【适合用于备份】redis rdb持久化策略

手工持久化可以设置哪些数据会被持久化,设置条件后即使我们不手工敲save 系统也会自动帮我们做持久化操作。

rdb持久化也叫快照持久化,他会持久化当前内存状态。

优点:数据持久化快。 非常适合用于备份。

RDB持久化快照条件配置
在我们不用敲save主动进行持久化的时候,我们还可以使用一些条件进行自动持久化,比如设置 100秒保存一次。
redis.conf 添加条件如下: save 900 1
save 300 10
save 60 10000 配置分别表示:
900秒(15分钟)内有1个更改
300秒(5分钟)内有10个更改
60秒内有10000个更改

redis AOF持久化

记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集

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

优点: 可以最大程度保证数据不会丢失

缺点:日志记录的量级会比较大

RDB持久化只会保存最后一次的操作,而AOF会保存所有的操作。它的量级会比RDB持久化日志更大,类似于mysql的binglog

redis AOF持久化配置

重要配置:
appendonly yes #是否打开持久化功能
appendfsync always #是否开启持久化条件 always[每次修改都持久化] everysec[每秒持久化一次] 一般设置everysec 注意: redis集群中,这个功能必须要开启。
配置文件:
daemonize yes
port 6379
logfile /nosql/redis/6379/redis.log
dir /nosql/redis/6379
dbfilename dump.rdb
#protected-mode no
bind 10.0.0.63
requirepass 123
save 900 1
save 300 10
save 60 10000 appendonly yes
appendfsync everysec

面试技巧:

redis的持久化方式有哪些,有什么区别?
redis有两种持久化方式,分别是 RDB持久化 AOF持久化
RDB持久化是以操作次数作为条件保存数据的他是基于快照进行持久化的,速度更快,主从复制也依赖该功能[速度快]
AOF持久化是指定每次修改追加方式进行数据持久化操作。可以最大程度保证redis数据安全 [更安全]

redis数据类型:

string: 字符类型
Hash: 字典类型
List: 列表
set: 集合
Sorted set: 有序集合

redis RDB AOF数据持久化的更多相关文章

  1. Redis进阶:数据持久化,安全,在PHP中使用

    一.redis数据持久化 由于redis是一个内存数据库,如果系统遇到致命问题需要关机或重启,内存中的数据就会丢失,这是生产环境所不能允许的.所以redis提供了数据持久化的能力. redis提供了两 ...

  2. Redis 中的数据持久化策略(RDB)

    Redis 是一个内存数据库,所有的数据都直接保存在内存中,那么,一旦 Redis 进程异常退出,或服务器本身异常宕机,我们存储在 Redis 中的数据就凭空消失,再也找不到了. Redis 作为一个 ...

  3. Redis 中的数据持久化策略(AOF)

    上一篇文章,我们讲的是 Redis 的一种基于内存快照的持久化存储策略 RDB,本质上他就是让 redis fork 出一个子进程遍历我们所有数据库中的字典,进行磁盘文件的写入. 但其实这种方式是有缺 ...

  4. redis rdb aof比较

    Redis中数据存储模式有2种:cache-only,persistence; cache-only即只做为“缓存”服务,不持久数据,数据在服务终止后将消失,此模式下也将不存在“数据恢复”的手段,是一 ...

  5. [Redis] RDB & AOF

    http://my.oschina.net/davehe/blog/174662 rdb - 存在dump.rdb 的二进制文件中 dump 整个db, 数据多的时候,不合适频繁保存,保存的时间间隔应 ...

  6. 12 redis之aof日志持久化

    Aof 的配置 appendonly no # 是否打开 aof日志功能 appendfsync always # 每1个命令,都立即同步到aof. 安全,速度慢 appendfsync everys ...

  7. Redis数据持久化机制AOF原理分析一---转

    http://blog.csdn.net/acceptedxukai/article/details/18136903 http://blog.csdn.net/acceptedxukai/artic ...

  8. 详解Redis RDB持久化、AOF持久化

    1.持久化 1.1 持久化简介 持久化(Persistence),持久化是将程序数据在持久状态和瞬时状态间转换的机制,即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘). 1.2 red ...

  9. 《面试官之你说我听》:简明的图解Redis RDB持久化、AOF持久化

    欢迎关注文章这一系列,一起学习 <提升能力,涨薪可待篇> <面试知识,工作可待篇> <实战演练,拒绝996篇> 如果此文对你有帮助.喜欢的话,那就点个赞呗,点个关注 ...

  10. Redis持久化rdb&aof

    Redis持久化rdb&aof 前言 持久化:即把数据存储于断电后不会丢失的设备中,通常是硬盘 常见的持久化方式: 主从:通过从服务器保持持久化,如mongoDB的replication se ...

随机推荐

  1. BI 和报表有什么区别

    BI 从早期提出的概念上来划分可以分为数据仓库.ETL.olap 和报表这几部分可以看到报表只是 BI 中的一个组成部分,只不过数据在 web 端展示时通常是通过报表形式,所以经常会把报表当做是 BI ...

  2. 当年老夫手写的cookie

    前言 留来来只为了回忆,旧博客迁移. 正文 /** * Created by OC on 20xx/8/27. */ function setCookie(name,value,expires,pat ...

  3. Kafka 集群副本数量调整

    Kafka 创建时未指定多个副本或者副本数量过少,都可以在后期手动添加,另外如果副本过多也可以减少,当前调整基于 Kafka 的版本是 2.5.1,但是估计 2.1 ~ 2.5 应该都是兼容的. 下面 ...

  4. c#程序员必学清单补充

    作为 C# 程序员,除了上述经典书籍和开源框架外,还需要掌握以下技术: 1. .NET Core 和 ASP.NET Core:了解并熟练掌握 .NET Core 和 ASP.NET Core 框架, ...

  5. Qt 从 QTransform 逆向解出 Translate/Scale/Rotate(平移/缩放/旋转)分析

    QTransform 用于图形绘制,它定义了如何平移(translate).缩放(scale).切变(shear).旋转(rotate)或投射(project)坐标系.注意:QTransform 是作 ...

  6. ZooKeeper 在阿里巴巴的服务形态演进

    简介: 本文将给大家介绍下 ZooKeeper 的最佳实践场景,归为了 3 类,分别是:微服务领域,代表的集成产品是 Dubbo/SpringCloud:大数据领域,代表的集成产品是 Flink/Hb ...

  7. 【ESSD技术解读-03】阿里云块存储企业级特性之异步复制

    ​简介: 在大数据时代,数据就是企业的核心资产,是企业的生命线.在现实世界中,灾难时有发生,当发生灾难时,容灾能力成为企业能否生存的关键.云上容灾服务,通常称为 DRaaS(灾难恢复即服务)不但能够省 ...

  8. 顺丰科技 Hudi on Flink 实时数仓实践

    ​简介: 介绍了顺丰科技数仓的架构,趟过的一些问题.使用 Hudi 来优化整个 job 状态的实践细节,以及未来的一些规划. 本文作者为刘杰,介绍了顺丰科技数仓的架构,趟过的一些问题.使用 Hudi ...

  9. OpenKruise v0.10.0 版本发布:新增应用弹性拓扑管理、应用防护等能力

    简介: 阿里云开源的云原生应用自动化管理套件.CNCF Sandbox 项目 -- OpenKruise,今天发布 v0.10.0 新版本,这也会是 OpenKruise v1.0 之前的最后一个 m ...

  10. WPF 自定义控件入门 可重写的各个方法或属性的意义

    本文属于 WPF 自定义控件入门系列博客.本文整理在 WPF 里面,自定义控件,非用户控件时,可以重写基类的许多方法和属性,这些方法和属性的作用和含义.方便让大家了解到自定义控件时,有哪些方法或属性可 ...