Redis的持久化(RDB、AOF)

  Redis的数据都是存储在内存中,为了数据的永久保存,需要把数据同步到硬盘上,这个过程就叫做持久化.

Redis的持久化存在有两种方式: rdb方式,aof方式,这两种方式可以单独使用,也可以综合使用.

  1. rdb持久化方式: 是在指定的时间间隔写入硬盘
  2. aof持久化方式:是以日志,记录每一个操作,服务器启动后,根据日志来构建数据.

RDB方式

  RDB方式是redis默认支持的,它的优劣如下:

优势:  只有一个文件,时间间隔的数据,可以归档为一个文件,方便压缩和转移

劣势:  如果宕机,数据损失比较大,因为它是每隔一个时间段进行持久化操作的,也就是积累的数据比较多,一旦宕机,就彻底懵逼了.

1、查看redis的配置文件:redis.windows.conf文件

文件名:redis.windows.conf

2、找到如下位置:

#   save ""
save 900 1
save 300 10
save 60 10000

这是就是RDF的持久化策略:

  • 1)save 900   1 表示每900秒内至少有一个key发生变化,就持久化
  • 2)save 300   10 表示每300秒内至少有10个key发生变化,就持久化
  • 3)save 60     10000 表示每60秒至少有10000个key发生变化,就持久化
  • save " "  关闭rdf持久化

3、再往下拉,找到如下位置:

  dbfilename配置表示持久化的文件是 dump.rdb

# The filename where to dump the DB
dbfilename "dump.rdb"

4、继续往下拉,找到如下位置:dir ./ 表示文件存储的路径就是当前目录,也就是在redis安装包下

# Note that you must specify a directory here, not a file name.
dir ./

Redis的持久化(RDB、AOF)

备份数据:我们只需要把dump.rdb文件拷贝到另外一个位置,

还原数据:只需要把dump.rdb文件拷贝到redis的安装目录下就可以了,重启redis就可以了。

AOF方式

  AOF方式,以日志记录每一个操作。Redis可以通过日志去还原数据。

优势: 安全性相对RDB方式高很多,它记录了每一个操作

劣势:效率相对于RDB方式低很多。

  Redis默认是关闭AOF方式的。

1、查看redis的配置文件

appendonly no   (no:表示关闭AOF,yes:表示开启)

# The name of the append only file (default: "appendonly.aof")
appendfilename "appendonly.aof"  (aop方式的日志文件

2、再往下拉

# If unsure, use "everysec".

# appendfsync always
appendfsync everysec
# appendfsync no

aof的三种同步策略:

  • always 表示只要发送修改,立即同步(推荐使用,安全性最高)
  • everysec 表示每秒同步一次
  • no 表示不同步

Redis的持久化(RDB、AOF)

备份: 我们只需要把appendonly.aof文件拷贝到其他存储设备中,

还原:我们只需要把appendonly.aof文件拷贝到redis目录下

 

Redis的持久化(RDB、AOF)

上一篇:mac下mysql忘记了密码怎么办


下一篇:postgresql中的Windows构建