redis持久化 RDB与AOF

RDB与AOF区别

  • rdb: 基于快照的持久化,速度更快,一般用做备份,主从复制也是依赖于rdb持久化功能
  • aof:以追加的方式记录redis操作日志的文件,可以最大程度的保证redis数据的安全

RDB

前言

  • 前言

    • Redis是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失。
  • RDB持久化
    • 基于内存的数据快照
    • 定期执行数据快照
    • 手动触发数据快照

RDB实践

  • redis安装链接:https://www.cnblogs.com/yuncong/p/10259211.html

  • 在配置文件中,添加rdb持久化参数

    # 新建配置文件redis-6379.conf
    touch redis/conf/redis-6379.conf
    # 编辑
    vim redis/conf/redis-6379.conf # 写入内容
    port 6379
    daemonize yes
    pidfile /data/6379/redis.pid
    loglevel notice
    logfile "/data/6379/redis.log"
    dir /data/6379 #定义持久化文件存储位置
    protected-mode yes
    dbfilename dbmp.rdb
    save 900 1 #rdb机制 每900秒 有1个修改记录
    save 300 10 #每300秒 10个修改记录
    save 60 10000 #每60秒内 10000修改记录 # 注意路径问题,不要将备注也复制进去,

    注意:如果报存储文件没有,根据你自己写的路径自己创建

  1. 启动redis服务端

    redis-server redis-6379.conf
  2. 登录redis设置key

    redis-cli -p 6379 -a xxx
    # -p 端口号 -a 设置的密码
    # 如果没输入密码,登录之后
    auth 密码
  3. 此时检查目录,/data/6379底下没有dbmp.rdb文件

  4. 通过save触发持久化,将数据写入RDB文件

    127.0.0.1:6379> set age 18
    OK
    127.0.0.1:6379> save
    OK

AOF

前言

  • AOF(append-only log file)

    记录服务器执行的所有变更操作命令(例如set del等),并在服务器启动时,通过重新执行这些命令来还原数据集

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

    优点:最大程序保证数据不丢

    缺点:日志记录非常大

配置

  1. 配置文件

    # 新建配置文件redis-6379.conf
    touch redis/conf/redis-6379.conf
    # 编辑
    vim redis/conf/redis-6379.conf
    # 参数
    daemonize yes
    port 6379
    logfile /data/6379/redis.log
    dir /data/6379
    dbfilename dbmp.rdb
    requirepass redhat
    save 900 1
    save 300 10
    save 60 10000
    appendonly yes
    appendfsync everysec

    参数解析

    appendonly yes
    appendfsync always 总是修改类的操作
    everysec 每秒做一次持久化
    no 依赖于系统自带的缓存大小机制
  2. 启动redis

    redis-server redis-6379.conf
  3. 检查redis数据目录/data/6379/是否产生了aof文件

    ls /data/6379/
  4. 登录redis-cli,写入数据,实时检查aof文件信息

    # 新开一个窗口,观察aof文件信息
    tail -f appendonly.aof # 登录redis-cli
    redis-cli -p 6380 -a xxx # -p 端口号 -a 设置的密码
    # 如果没输入密码,登录之后
    auth 密码

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

  1. Linux - redis持久化RDB与AOF

    目录 Linux - redis持久化RDB与AOF RDB持久化 redis持久化之AOF redis不重启,切换RDB备份到AOF备份 确保redis版本在2.2以上 实验环境准备 备份这个rdb ...

  2. Redis持久化----RDB和AOF 的区别

    关于Redis说点什么,目前都是使用Redis作为数据缓存,缓存的目标主要是那些需要经常访问的数据,或计算复杂而耗时的数据.缓存的效果就是减少了数据库读的次数,减少了复杂数据的计算次数,从而提高了服务 ...

  3. redis持久化RDB和AOF

    Redis 持久化: 提供了多种不同级别的持久化方式:一种是RDB,另一种是AOF. RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot). AO ...

  4. redis持久化RDB与AOF

    redis持久化 Redis是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失. RDB持久化 ...

  5. 配置方案:Redis持久化RDB和AOF

    Redis持久化方案 Redis是内存数据库,数据都是存储在内存中,为了避免进程退出导致数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘.当下次Redis重启时,利 ...

  6. Redis持久化RDB和AOF优缺点是什么,怎么实现的?我应该用哪一个?

    原文http://www.ymq.io/2018/03/24/redis/ Redis是一种高级key-value数据库.数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集 合和有序集合.支 ...

  7. Redis持久化RDB和AOF原理

    前言: redis持久化方式分为两种:RDB快照和AOF方式(默认为RDB模式),当Redis服务器重启的时候,会自动恢复数据,优先从AOF中恢复,其次才从RDB中恢复   一.RDB快照模式 RDB ...

  8. 15.3,redis持久化RDB与AOF

    redis持久化 Redis是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失. RDB持久化 ...

  9. Redis(二)、Redis持久化RDB和AOF

    一.Redis两种持久化方式 对Redis而言,其数据是保存在内存中的,一旦机器宕机,内存中的数据会丢失,因此需要将数据异步持久化到硬盘中保存.这样,即使机器宕机,数据能从硬盘中恢复. 常见的数据持久 ...

随机推荐

  1. c++ 字符串替换程序 p324

    字符串替换程序 C++ Primer 324页 // replace:从str字符串中查找oldVal字符串,如果找到就替换成newVal字符串. void replace(string &s ...

  2. Centos7.+系统,二进制包脚本安装Mysql

    #!/bin/bash #配置数据库要安装的目录,可以根据自己的安装路径修改PATHDIRPATHDIR="/project"BASEDIR="$PATHDIR/mysq ...

  3. python中面向对象知识框架

    案列: 1 class Chinese: # 类的创建,类名首字母要大写 2 eye = 'black' # 类属性的创建 3 4 def __init__(self,hometown): # 类的初 ...

  4. 大数据分析用自助式BI工具就能轻松解决,so easy!

    之前老板给了我一个任务,让我赶紧学习一下大数据分析,下个季度就要用. 赶紧看了一下日历,这离下个季度还有不到半个月的时间,而且我还没有数据分析基础,该怎么能在这么短的时间内学会大数据分析呢-- 经过多 ...

  5. Spring切换多个配置环境(dev,prod,test等)

    默认有一个application.properties配置文件, 然后在resource目录下新建3个配置文件比如 application-dev.properties application-tes ...

  6. Linux的用户与用户组管理

    1.Linux用户与用户组 Linux 是多用户多任务操作系统,Linux 系统支持多个用户在同一时间内登陆,不同用户可以执行不同的任务,并且互不影响.不同用户具有不问的权限,毎个用户在权限允许的范围 ...

  7. JZ-033-丑数

    丑数 题目描述 把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. ...

  8. NLP论文解读:无需模板且高效的语言微调模型(上)

    原创作者 | 苏菲 论文题目: Prompt-free and Efficient Language Model Fine-Tuning 论文作者: Rabeeh Karimi Mahabadi 论文 ...

  9. linux shell编程流程控制

    条件选择 单分支条件 多分支条件 选择执行if语句 单分支 if 判断条件;then 条件为真的分支代码 fi 双分支 if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 f ...

  10. Spring Cloud Ribbon 中的 7 种负载均衡策略

    负载均衡通器常有两种实现手段,一种是服务端负载均衡器,另一种是客户端负载均衡器,而我们今天的主角 Ribbon 就属于后者--客户端负载均衡器. 服务端负载均衡器的问题是,它提供了更强的流量控制权,但 ...