• redis持久化


    redis持久化

    redis特性

    edis是内存型的数据库

    redis数据放在内存中
    重启服务器丢失数据
    重启redis服务丢失数据
    断电丢失数据
    
    

    为了防止redis数据丢失,进行持久化,所以将数据写入到一个文件中来实现

    RDB持久化

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

    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修改记录
    

    注意: 修改完配置之后,需要重启redis服务

    触发rdb持久化,可以手动save命令即可,生成 dump.rdb持久化文件

    重启redis,数据不再丢失

    rdb数据文件是二进制文件,人为的看不懂

    AOF持久化

    在配置文件中,添加aof参数

    在redis-6379.conf中添加参数,开启aof功能

    appendonly yes    #是否开启aof持久化功能,默认为不开启no
    appendfsync everysec   #aof写数据策略。always(每次) ,erverysec(每秒), no(系统控制)
    

    重启redis数据库,加载aof功能

    AOF重写

    • 手动重写
    bgrewriteaof
    
    • 自动重写
    auto-aof-rewrite-min-size  size
    auto-aof-rewrite-percentage  percentage
    

    redis持久化RDB转化AOF

    删除现有的aof文件,备份RDB文件

    cd /data/6379
    rm -rf appendonly.aof
    cp qishi5.rdb qishi5.rdb.bak
    

    配置RDB切换到AOF

    # 先进入redis客户端
    redis-cli
    
    # 配置开启AOF
    127.0.0.1:6379> config set appendonly yes
    # 关闭RDB
    127.0.0.1:6379> config set save ""
    

    以上配置重启后会失效,如果需要永久将RDB切换到AOF, 还是需要修改配置文件才可以

    -------------------------------------------

    个性签名:代码过万,键盘敲烂!!!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    浅尝辄止——在C++中调用C#的回调函数——COM方式
    代码管理——如何连接Git Server,下载代码
    浅尝辄止——使用ActiveX装载WPF控件
    软件调试——CPU异常列表
    软件调试——IA-32 保护模式下寄存器一览
    Delphi面向对象编程
    看雪2017CTF第二题解法
    串操作指令
    MASM 重复汇编
    MASM 宏结构
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/13917070.html
Copyright © 2020-2023  润新知