Redis基本信息

Redis 持久化

redis持久化包含两种方式
RDB - Redis database
AOF - Append only file

RDB是redis默认的Redis持久化方式,会根据配置文件里边的设置,在特定的时间间隔内备份整个redis数据库。
RDB优点:在恢复的时候加载速度比较快,适用于定期需要备份数据库的场景
RDB缺点:1. 因为每次会备份所有内存中的实力,所以备份速度会比较慢,在真正的生产环境中一般会把时间间隔设定在5分钟以上,如果在备份的时候出现服务器故障,那么这5分钟之内的数据就会造成永久丢失。 2. 每次备份会对CPU资源造成影响,会出现毫秒级甚至秒级无响应,对相应时间比较重视的系统不适于使用。

AOF采用增量保存数据库更新的方式把所有数据更新语句都追加到已有的文件中
关键配置参数appendfsync
always:保存每一个更新 (速度较慢 安全性高)
no:不强制更新文件,依赖操作系统的文件同步机制 (速度较快 安全性低)
everysec: 每秒钟将更新同步到文件系统 (折中方案 默认设置)

AOF优点: 对于数据完整性要求比较高的应用来说更适合应用AOF方式,因为在特定服务器故障出现时,最多也只损失几秒钟之间的数据。
AOF缺点:

  1. 生成的aof文件会比较大,在数据库重置的时候时间较长
  2. 文件内容有的时候会出现问题,需要通过redis-check-aof修复。

数据库恢复  
默认情况下,当RDB备份文件和AOF备份文件同时存在的时候会默认从AOF文件加载。
aof文件在体积过大的时候会自行自动优化。

你可能感兴趣的:(数据库/NoSql)