Redis 彻底禁用RDB持久化操作

Redis 禁用RDB持久化

Redis是默认开启RDB的,AOF则是默认关闭的。如果需要关闭RDB,将Redis完全作为一个缓存使用,需要修改配置项save。

开启save “”, 将save 900 1、save 300 10、save 60 10000注释掉。

配置文件修改如下:

save ""
#save 900 1
#save 300 10
#save 60 10000

如果是中途关闭RDB持久化,还需要删除已经生成的文件dump.rdb。重启即可完全关闭RDB持久化。

可以通过命令config get dbfilename获取最新的文件名。通过命令config get dir获取最新路径。

配置文件中的配置如下:

#指定本地数据库文件名,一般采用默认的 dump.rdb
dbfilename dump.rdb

#数据目录,数据库的写入会在这个目录。rdb、aof文件也会写在这个目录
dir /usr/local/redis/var

Redis 持久化AOF与RDB配置

AOF保存的数据方案时最完整的,如果同时开启了rdb和aof下,会采用aof方式。

(1)设置数据保存到数据文件中的save规则

save 900 1     #900秒时间,至少有一条数据更新,则保存到数据文件中
save 300 10    #300秒时间,至少有10条数据更新,则保存到数据文件中
save 60 10000  #60秒时间,至少有10000条数据更新,则保存到数据文件中

(2)数据rdb压缩设置

rdbcompression yes  #指定存储至本地数据库时是否压缩数据,默认是yes,redis采用LZF压缩,如果为了节省CPU时间
                    #可以关闭该选项,但会导致数据库文件扁的巨大
dbfilename dump.rdb  #指定rdb保存到本地数据库文件名
stop-writes-on-bgsave-error yes  #当硬盘因为权限等原因无法写入时,停止写入
rdbchecksum yes    #对rdb文件进行校验

(3)aof文件操作

appendonly no   #指出是否在每次更新操作后进行日志记录,如果不开启,可能会在断电时导致一段时间内的数据丢失,因为redis本身同步数据文件是按上面的save条件来同步的,所以有的数据会在一段
                      #时间内只存在于内存中。
# appendfsync always       # always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
appendfsync everysec       # everysec:表示每秒同步一次(折衷,默认值)
# appendfsync no             # no:表示等操作系统进行数据缓存同步到磁盘(快)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Redis打开rdb文件常用方法详解

    阿里云的redis 备份后为 rdb 文件,那么如何使用本地redis 打开rdb 文件呢? windows上操作方法整理 方法一: windows 安装的 redis 目录下,有个dump.rdb 文件 先把原来的备份,再把要打开的xxx.rdb文件命名成 dump.rdb 然后运行 redis-server.exe 就打开了 再运行 redis-cli.exe 就可以命令访问了 方法二: 在redis.windows.conf 文件中修改配置,搜索dbfilename, 把dump.rdb

  • Redis两种持久化方案RDB和AOF详解

    本文主要针对Redis 有两种持久化方案RDB和AOF做了详细的分析,希望我们整理的内容能够帮助大家对这个两种方案有更加深入的理解. Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File).如果你想快速了解和使用RDB和AOF,可以直接跳到文章底部看总结.本章节通过配置文件,触发快照的方式,恢复数据的操作,命令操作演示,优缺点来学习 Redis 的重点知识持久化. RDB 详解 RDB 是 Redis 默认的持久化方案.在指定的时间

  • 了解redis中RDB结构_动力节点Java学院整理

    RDB文件是在redis的"快照"的模式下才会产生,那么如果我们理解了RDB文件的结构,是不是让我们对"快照"模式能做到一个心中有数呢??? 一.RDB结构剖析 首先呢,我们要对RDB文件有一个概念性的认识,比如下面画的图一样: 从图中,我们大概看到了RDB文件的一个简要的存储模式,但为了更好的方便对照,我准备save一个empty database,对比一下看看效果: 然后我们用winHex打开dump.rdb文件,看看它的16进制. 好了,该打开的我都打开了,下

  • 浅谈Redis中的RDB快照

    一.概述 所谓的快照,就是记录某一个瞬间东西,比如当我们给风景拍照时,那一个瞬间的画面和信息就记录到了一张照片. 所以,RDB 快照就是记录某一个瞬间的内存数据,记录的是实际数据,而 AOF 文件记录的是命令操作的日志,而不是实际的数据. 因此在 Redis 恢复数据时, RDB 恢复数据的效率会比 AOF 快些,因为直接将 RDB 文件读入内存就可以了,不需要像 AOF 那样还需要额外执行操作命令的步骤才能恢复数据. 接下来,就来具体聊聊 RDB 快照 . 二.快照怎么用? 要熟悉一个东西,先

  • Redis 通过 RDB 方式进行数据备份与还原的方法

    Intro 有的时候我们需要对 Redis 的数据进行迁移,今天介绍一下通过 RDB(快照)文件进行 Redis 数据的备份和还原 Redis 持久化 Redis 的数据持久化有两种机制,一种是 RDB(Redis Database),一种是 AOF(Append Only File) Redis 提供了不同级别的持久化方式: RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储. AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令

  • redis学习之RDB、AOF与复制时对过期键的处理教程

    生成RDB文件 在执行SAVE命令或者BGSAVE命令创建一个新的RDB文件时,程序会对数据库中的键进行检查,已过期的键不会被保存到新创建的RDB文件中. 举个例子,如果数据库中包含三个键k1.k2.k3,并且k2已经过期,那么当执行SAVE命令或者BGSAVE命令时,程序只会将k1和k3的数据保存到RDB文件中,而k2则会被忽略. 因此,数据库中包含过期键不会对生成新的RDB文件造成影响. 可参考rdb.c中函数rdbSave()函数源码: /* Iterate this DB writing

  • Redis持久化RDB和AOF区别详解

    RDB是Redis内存到硬盘的快照,用于redis持久化,创建RDB二进制文件,将存储在内存中的数据,持久化的放到硬盘中,当我们需要这些数据的时候,启动载入RDB文件,数据将会被存入内存中,其实RDB就是一种快照的方式持久化存储数据,也可以作为一种复制媒介,这个我们后面在谈. RDB 触发机制--主要三种方式 save 同步命令(会阻塞redis) bgsave 异步命令(fork) 自动 Save同步命令 save 文件策略:生成一个临时文件,如果存在老的文件,将会替换旧文件 bgsave 异

  • Redis 彻底禁用RDB持久化操作

    Redis 禁用RDB持久化 Redis是默认开启RDB的,AOF则是默认关闭的.如果需要关闭RDB,将Redis完全作为一个缓存使用,需要修改配置项save. 开启save "", 将save 900 1.save 300 10.save 60 10000注释掉. 配置文件修改如下: save "" #save 900 1 #save 300 10 #save 60 10000 如果是中途关闭RDB持久化,还需要删除已经生成的文件dump.rdb.重启即可完全关闭

  • Redis中AOF与RDB持久化策略深入分析

    目录 写在前面 一.Redis为什么要持久化 二.Redis的持久化方式 2.1. AOF持久化(Append of file) 2.1.1 fsync 系统调用 2.1.2 AOF持久化策略 2.1.3 aof_rewrite 2.2 RDB快照(redis默认持久化方式) 触发方式(自动触发和非自动触发) 2.3 RDB和AOF混用 2.4 三种持久化方式比较 三.什么是大key以及大key对持久化的影响 3.1 什么是大key 3.2 fork进程写时复制原理 3.3 面试题-大key对持

  • Redis教程(十):持久化详解

    一.Redis提供了哪些持久化机制: 1). RDB持久化:     该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘.        2). AOF持久化:     该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的.     3). 无持久化:     我们可以通过配置的方式禁用Redis服务器的持久化功能,这样我们就可以将Redis视为一个功能加强版的memcached了.     4).

  • 浅谈redis内存数据的持久化方式

    一.概述 Redis的强大性能很大程度上都是因为所有数据都是存储在内存中的,然而当Redis重启后,所有存储在内存中的数据将会丢失,在很多情况下是无法容忍这样的事情的.所以,我们需要将内存中的数据持久化!典型的需要持久化数据的场景如下: 将Redis作为数据库使用: 将Redis作为缓存服务器使用,但是缓存miss后会对性能造成很大影响,所有缓存同时失效时会造成服务雪崩,无法响应. 本文介绍Redis所支持的两种数据持久化方式. 二.Redis数据持久化 Redis支持两种数据持久化方式:RDB

  • Redis高可用之持久化

    目录 一.高可用 什么是高可用 二.Redis持久化 持久化功能 RDB持久化 触发条件 bgsave执行流程 AOF持久化 执行流程 命令追加 文件写入和文件同步 文件重写 文件重写流程 三.RDB和AOF的优缺点 RDB持久化的优缺点 优点 缺点 AOF持久化优缺点 四.Redis性能管理 查看Redis内存使用 内存碎片率 内存碎片如何产生 跟踪内存碎片率 解决碎片率大的问题 内存使用率 内回收key 回收策略 五.Redis的优化 一.高可用 什么是高可用 在web服务器中,高可用是指服

  • redis的2种持久化方案深入讲解

    前言 Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集 合和有序集合.支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能.所以Redis也可以被看成是一个数据结构服务 器. Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为"半持久化模式"):也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为&q

  • Redis中键值过期操作示例详解

    1.过期设置 Redis 中设置过期时间主要通过以下四种方式: expire key seconds:设置 key 在 n 秒后过期: pexpire key milliseconds:设置 key 在 n 毫秒后过期: expireat key timestamp:设置 key 在某个时间戳(精确到秒)之后过期: pexpireat key millisecondsTimestamp:设置 key 在某个时间戳(精确到毫秒)之后过期: 下面分别来看以上这些命令的具体实现. 1)expire:N

  • 关于Redis数据库三种持久化方案介绍

    目录 一.回顾Redis 二.方案一:bgsave 三.方案二:配置文件rdb 四.方案三:aof 总结 一.回顾Redis 1.redis的特点 redis是一个内存中的数据结构存储系统.优点:内存操作速度比硬盘很快.缺点:但是内存没有办法保存数据. 2.redis提供了磁盘持久化 通过磁盘持久化功能,就可以把内存中的数据,持久化到磁盘当中去.数据就可以长时间的进行保存. 二.方案一:bgsave 1.如何操作 启动redis-cli 客户端,输入一条数据,并输入持久化命令basave就可以完

  • 浅析python redis的连接及相关操作

    redis简介 Redis是一个开源的使用ANSIC语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.是一个非关系型数据库,经常会用作缓存,消息中间件的操作 redis优势 速度快,因为数据存在内存中 支持丰富数据类型,支持字符串,哈希表,列表,集合,有序集合 支持事务,操作都是原子性 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除 1.redis连接.及存取值 import redis r = redis.Redis(h

随机推荐