#Redis的两种持久化方式:RDB、AOF @FDDLC

it2023-08-01  73

一、引言

我们知道,Redis是一个内存数据库。如果不做备份的话,Redis这次关闭、下次打开、数据就没了。

那怎么办?做备份呗!这个备份,当然是指把原本在内存中的Redis数据保存到硬盘当中,也就是所谓的持久化。

Redis持久化有两种方式,一种是RDB(Redis DataBase),可以理解为数据快照,即每隔一段时间对内存中的所有Redis数据来个备份;另一种是AOF(Append Only File),也就是日志的形式,Redis根据一定的策略,对用户的操作进行记录。

 

二、如何配置

1、RDB的配置

在Redis的根目录下找到:

在它里面找到:

咱们给它加上一行:save 1 1

这样就变成了:

什么意思呢?就是说:如果1秒钟内至少有1次操作的话,就会进行RDB备份。

注意:直接启动Redis的话,配置不会生效:

上面是直接启动时的提示,意思是说因为你没指定配置文件,它采用的是默认配置!

指定配置文件的方法:在Redis的根目录下打开CMD,要保证CMD的工作目录是Redis的根目录!

然后输入命令:redis-server.exe redis.windows.conf

从上图中可以看出,Redis不再说你没指定配置文件了!

开始测试:如果1秒内有1次以上的操作,能否触发Redis的RDB备份?

从上面可以看出,咱们的Redis还是很听话的。如果1秒内有1次以上的操作,Redis的确进行了RDB备份!

总结:

a、经过测试,这个操作,是指增删改操作,不包含查!

b、生成的RDB备份在Redis根目录下,名字叫做

 

2、AOF的配置

首先还是打开redis.windows.conf,找到这一项,改成:

这样就开启了AOF备份。

继续!找到:

这里给出了三种AOF的备份策略(#号表示被注释掉了):

第一行表示记录每一次的增删改(不含查)操作,第二行表示每秒进行一次日志记录,第三行表示不进行日志记录。

设置完后,当你指定了配置文件启动Redis时,可以发现Redis根目录下生成了一个0kb的

当你进行了增删改后,肯定有1秒了,这时你可以发现这个原先0kb的appendonly.aof已经变成1kb了!

注意:当你开启AOF备份方式时,原先默认的RDB方式依然存在,即RDB和AOF是可以共存的。

 

三、总结

有关RDB和AOF的总结:

1、默认方式是RDB。

2、这两种方式可以共存。

3、一般而言,AOF的开销更大。

最新回复(0)