多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
> 由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁 盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化。 Redis持久化有两种方式:`RDB(快照模式)`、`AOF(追加模式)`。 ## AOF持久化 (目前主流的用法) AOF持久化:**以独立日志的方式记录每次写命令**,删除操作,查询操作不会记录,以文本的方式记录,可以打开文件看到详细的操作记录, 重启时再重新执行AOF文件中的命令达到恢复数据的目的。AOF的主要作用 是解决了数据持久化的实时性,目前已经是Redis持久化的主流方式。 **主要特点**: * Append only file,采用追加的方式保存,默认文件为appendonly.aof; * 记录所有的**写操作命令**,在服务启动的时候**重演这些命令**就可以还原数据库; * AOF默认关闭,需要在配置文件中手动开启。 开启AOF: ~~~ redis 127.0.0.1:6379> config set appendonly yes OK ~~~ ## RDB持久化 RDB持久化**是在指定的时间间隔内把当前进程数据生成快照保存到硬盘的过程**,实际操作过程是fork一个子进程,先将数据集写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储。触发RDB持久化过程分为手动触发和自动触发。 手动触发: ~~~ redis 127.0.0.1:6379> save OK ~~~ 自动触发: ~~~ 127.0.0.1:6379> bgsave Background saving started ~~~