zoukankan      html  css  js  c++  java
  • redis持久化

    redis是一种内存型的非关系数据库,key-value方式存储,一旦服务器进程关闭,数据就会丢失,redis提供了两种持久化的方案(RDB,AOF),会把数据保存到磁盘中。

    RDB持久化

    RDB持久化产生的RDB文件是一个经过压缩的二进制文件,这个文件保存在磁盘中,redis可以通过此文件还原数据库的状态,可以手动执行通过save触发,也可以在配置文件redis.conf中设置定期执行。优点是速度快,适合做备份,主从复制就是基于RDB持久化功能实现。

    示例

    1,添加配置文件

    daemonize yes
    port 6379
    logfile /data/6379/redis.log
    dir /data/6379
    dbfilename  dbmp.rdb

    2,启动服务端

      redis-server redis.conf

    3,启动客户端

      redis-cli -p 6379 #端口号保持一致,6379是默认端口,为了安全可以修改默认文件。

    4,新建一个key

      set name cui

    5,quit退出,观察/data/6379下有没有dbmp.rdb文件。

      

    AOF持久化

    AOF能够记录服务器执行的所有变更操作的命令,有些类似于mysql的binlog,在服务器启动时,通过重新执行命令来还原数据集,文件中的命令以redis协议的格式保存,新的记录会被追加到AOF文件中。优点是能够最大程度保证数据记录的完整性,但是会导致记录日志体积过大。

    示例

    1,添加配置文件。

    #aof.conf
    
    daemonize yes
    port 6379
    logfile /data/6379/redis.log
    dir /data/6379
    appendonly yes
    appendfsync everysec

    2,启动 服务器和客户端。

    3,最好打开两开两个终端,其中一个用tail实时监控appendonly.aof文件,如图。

    如何在不重启的情况下从rdb数据转换为aof数据?

    在redis客户端输入:CONFIG set appenonly yes

  • 相关阅读:
    Activity与Fragment间的通信
    Activity生命周期.lanchMode.保存状态
    网络知识
    Android内存优化(使用SparseArray和ArrayMap代替HashMap)
    进程/线程死锁产生的原因以及如何避免死锁
    Android UI框架基本概念
    android在线源码
    y音频学习
    给 Android 开发者的 RxJava 详解
    设计模式之观察者模式
  • 原文地址:https://www.cnblogs.com/cuiyuanzhang/p/9437748.html
Copyright © 2011-2022 走看看