redis持久化详解
一、RDB持久化
RDB 持久化
可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。
优点:快速持久化、占用磁盘空间少、适合于用做备份,主从复制也是基于RDB持久化功能实现的。
缺点:当断电,重启时,RDB会丢失少部分数据。
rdb持久化核心配置参数
vim /nosql//redis.conf
dir /nosql/
dbfilename dump.rdb save
save
save 配置分别表示:
900秒(15分钟)内有1个更改
300秒(5分钟)内有10个更改
60秒内有10000个更改
RDB持久化高级配置
# 后台备份进程出错时,主进程停不停止写入?主进程不停止容易造成数据不一致
stop-writes-on-bgsave-error yes
# 导出的rdb文件是否压缩、如果rdb的大小很大的话建议这么做
rdbcompression yes
# 导入rdb恢复时数据时,要不要检验rdb的完整性、验证版本是不是一致
rdbchecksum yes
# 导出来的rdb文件名
dbfilename dump.rdb
# rdb的放置路径
dir ./
二、AOF持久化(append-only log file)
记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。
AOF文件中的命令全部以Redis协议的格式来保存,新命令会被追加到文件的末尾。
优点:可以最大程度保证数据不丢
缺点:日志记录量级比较大
AOF持久化配置
# 是否打开aof日志功能
appendonly yes
# 每1个命令,都立即同步到aof
appendfsync always
# 没1秒写入1次
appendfsync everysec
# 写入工作交给操作系统,由操作系统判断缓冲区大小,统一写入到aof.
appendfsync no vim /nosql//redis.conf
appendonly yes
appendfsync everysec
AOF持久化高级配置
# 正在导出rdb快照的过程中,要不要停止同步aof
no-appendfsync-on-rewrite yes/no
# aof文件大小比起上次重写时的大小,增长率100%时重写,缺点:业务开始的时候,会重复写多次。
auto-aof-rewrite-percentage
# aof文件,至少超过64M时,重写
auto-aof-rewrite-min-size 64mb
补充:
redis持久化方式有哪些?有什么区别?
rob:基于快照的持久化,速度更快,一般用做备份,主从复制也是依赖于rdb持久化功能。
aof:以追加的方式记录redis操作日志的文件。可以最大程度的保证redis数据安全,类似于mysql的binlog
redis持久化详解的更多相关文章
- Redis AOF 持久化详解
		
Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多.但是一旦进程退出,Redis 的数据就会丢失. 为了解决这个问题,Redis 提供了 RDB 和 ...
 - redis配置详解
		
##redis配置详解 # Redis configuration file example. # # Note that in order to read the configuration fil ...
 - 5种Redis数据结构详解
		
本文主要和大家分享 5种Redis数据结构详解,希望文中的案例和代码,能帮助到大家. 转载链接:https://www.php.cn/php-weizijiaocheng-388126.html 2. ...
 - redis配置文件详解-3
		
redis3.0以上配置文件 #################################INCLUDES ################################### include ...
 - CentOS7/RHEL7安装Redis步骤详解
		
CentOS7/RHEL7安装Redis步骤详解 CentOS7/RHEL7安装Redis还是头一次测试安装了,因为centos7升级之后与centos6有比较大的区别了,下面我们就一起来看看Cent ...
 - Redis协议详解
		
smark Beetle可靠.高性能的.Net Socket Tcp通讯组件 支持flash amf3,protobuf,Silverlight,windows phone Redis协议详解 由于前 ...
 - Redis学习——详解Redis配置文件(三)
		
一.Redis脚本简介 在我们介绍Redis的配置文件之前,我们先来说一下Redis安装完成后生成的几个可执行文件: redis-server .redis-cli .redis-benchmark ...
 - Redis:默认配置文件redis.conf详解
		
转: Redis:默认配置文件redis.conf详解 # Redis配置文件样例 # Note on units: when memory size is needed, it is possibl ...
 - Python操作redis学习系列之(集合)set,redis set详解 (六)
		
# -*- coding: utf-8 -*- import redis r = redis.Redis(host=") 1. Sadd 命令将一个或多个成员元素加入到集合中,已经存在于集合 ...
 
随机推荐
- SharpNodeSettings项目,可配置的数据采集,统一的工业数据网关,OPC UA服务器开发,PLC数据发布到自身内存,redis,opc ua,以及数据可视化开发
			
本项目隶属于 HslCommunication 项目的SDK套件,如果不清楚HslCommunication组件的话,可以先了解那个项目,源代码地址:https://github.com/dathli ...
 - IOS  [转]setValue和setObject的区别
			
在使用NSMutableDictionary的时候经常会使用setValue forKey与setObject forKey,他们经常是可以交互使用的,代码中经常每一种的使用都有. 1,先看看setV ...
 - 第30课   C语言中的字符串
			
任意的软件开发过程都会涉及到字符串,字符串的概念: ca是字符数组,其他几个都是字符串,因为最后都有'\0'. 示例程序如下: #include <stdio.h> int main() ...
 - JS字符串的问题
			
首先,搞了好几个小时,头都大了,原来出在字符串问题上. 具体如下: 今天做Yii,遇到用JQuery 的AJAX方法做注册验证,把传回来的字符串与textField中的比较,发现相等,但是就是不出结果 ...
 - scanf()与gets()的区别
			
scanf()与gets()的区别 1.scanf()可以同时接受多个字符串,而gets()一次只能接受一个字符串. #include<stdio.h>int main(){ char s ...
 - LG3781 [SDOI2017]切树游戏
			
题意 题目描述 小Q是一个热爱学习的人,他经常去维基百科学习计算机科学. 就在刚才,小Q认真地学习了一系列位运算符,其中按位异或的运算符\(\oplus\)对他影响很大.按位异或的运算符是双目运算符. ...
 - 【Python】matplotlib 双y轴绘制及合并图例
			
1.双y轴绘制 关键函数:twinx() 问题在于此时图例会有两个. # -*- coding: utf-8 -*- import numpy as np import matplotlib.pypl ...
 - Python中定时任务框架APScheduler
			
前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍APScheduler的基本使用方法. 一.APScheduler介绍 APSc ...
 - 在WPF中使用CefSharp嵌入浏览器(转)
			
在WPF中使用CefSharp嵌入浏览器 日常开发中,我们需要将一些Web页面嵌入到桌面客户端软件中.下面我们使用CefSharp嵌入浏览器来实现. 首先先介绍一下CefSharp嵌入式浏览器,它 ...
 - windows 内存分配回收检查工具
			
LeakDiag是微软一款检测memory leak的工具,使用比较简单 首先去下载一个ftp://ftp.microsoft.com/PSS/Tools/Developer%20Support%20 ...