Redis的持久化

Redis的持久化有两种方法

一,RDB:是redis的默认方法,RDB相当于照快照,保存的是一种状态(保存的文件后缀是 rdb)

优点:1.快照保存数据速度极快,还原数据速度极快

   2.适用于灾难备份

缺点:1.小内存机器不适合使用。

    RDB机制符合要求就会照快照。(随时随地的启动),会占用一部分系统资源(突然地),

    很可能内存不足直接宕机。(宕机后,服务器会关闭,非正常关闭)

适用于内存比较充裕的计算机。

 RDB照快照的条件: 

    1.服务器正常关闭时候,照快照。  ./bin/redis-cli shutdown

    2.key 满足下列任何一个条件,照快照。

    save 900 1:  15分钟内有1个key发生变化,则dump内存快照。

    save 300 10:   5分钟内有10个key发生变化,则dump内存快照。

       save 60 10000: 1分钟内有10000个key发生变化,则dump内存快照。

 

 

二,AOF:使用日志保存数据操作(默认为关闭)

修改配置:1.开启 AOF :将appendonly no改为appendonly yes

     2.去掉 appendfsync  (everysec 或 always 或 no  )前方的 #

     3.按下Esc或Ctrl+C输入:wq(保存并退出)

     4.关机(可选)  ./bin/redis-cli shutdown

     5.看需要是否删除 rdb文件 :rm  -rf  dump.rdb

     6.加载文件并启动: ./bin/redis-server ./redis.conf

3 种配置方式:

1.每秒同步:每秒进行一次AOF保存数据。    安全性低,比较节省系统资源

      everysec :每秒同步一次,该策略为AOF的缺省策略

2.每修改同步:修改进行AOF保存数据      比较安全,但是极浪费效率

       always : 每次有数据修改发生时都会写入AOF文件

3.不同步(默认)               不安全

        no  :从不同步。高效但是数据不会被持久化

 

 

优点:1.持续性占用极少量的内存资源

缺点:日志文件会特别大,不适用与灾难恢复。回复效率远远低于RDB.

 

posted @ 2017-09-19 19:02  字帖公子  阅读(67)  评论(0编辑  收藏  举报