ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Redis-持久化-AOF和RDB如何选择

2022-02-22 15:02:38  阅读:173  来源: 互联网

标签:AOF 持久 文件 Redis RDB 服务器 数据


1,用哪个好

  官方推荐两个都启用

  如果数据不敏感,可单独使用RDB

  但不建议单独使用AOF,因为可能会出现BUG

  如果只是做纯内存缓存,可以两个都不用

  

 

2,官方建议

  1)RDB持久化方式能够在指定的时间间隔能对你的数据进行快照储存

  2)AOF 持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行只写命令来恢复原始的数据,

    AOF命令以及Redis 协议追加保存每次写的操作到文件末尾

  3)Redis 还能对 AOF 文件进行后台重写,使得 AOF 文件的体积不至于过大

  4)只做缓存:如果你只希望你的数据在服务器运行的时候存在,你也可以不使用任何持久化方式

  5)同时开启两种持久化方式

    在这种情况下,当 redis 重启的时候会优先载入aof 文件来恢复数据,因为在通常情况下,AOF文件保存的数据集要比 RDB文件保存的数据集要完整

  6)RDB的数据集不实时,同时使用两者时服务器重启也只会找 AOF 文件,那要不要只使用 AOF 呢?

    建议不要,因为 RDB 更适合用于备份数据库(AOF在不断变化不好备份),快速重启,而且不会有 AOF 可能潜在的bug,留着作为一个以防万一

 

  7)性能建议

    因为 RDB 文件只用作后备用途,建议只在 Slave 上持久化 RDB 文件,而且只要15分钟备份一次就好了,只保留 save 900 1 这条规则

    如果使用 AOF ,好处是在最恶劣的情况下,也只会丢失不超过2秒的数据,启动脚本较简单只load自己的 AOF 文件就可以了。

      代价,一是带来了持续的I/O ,二是 AOF rewrite的最后将rewrite过程中产生的新数据写到新文件造成的阻塞几乎是不可避免的

    只要硬盘许可,应该尽量减少 AOF rewrite 的频率,AOF 重写默认的基础大小是 64M  ,太小了,可以设置在 5g 以上

    默认操作原大小100%重写的规则可以改到适当的大小

  

标签:AOF,持久,文件,Redis,RDB,服务器,数据
来源: https://www.cnblogs.com/dplog/p/15923157.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有