redis 是一个内存数据库,关闭服务器就会丢失数据,需要持久化操作以永久保存
redis 持久化的 2 种机制, 分别是 ①RDB与②AOF
RDB:默认方式
这种方式是redis默认给我们提供的, 我们默认就使用这种机制, 不需要进行额外配置
在一定时间间隔内,会自动检测 key 的变化情况,然后自动持久化数据, 但我们可以进行一些自定义
1.修改默认保存配置
默认情况下,配置在 “redis.windows.conf” 文件中
找到98行左右,有如下3行
save 900 1
save 300 10
save 60 10000
也就是 900秒内,至少 1 次 key 变化则保存(300秒 10次,60秒 10000次)
通过修改该配置,可以修改默认存储间隔
2.持久化数据保存位置
数据存储在同目录下的 rdb 文件中
指定配置启动,以实现重启恢复数据
按照普遍的说法, 恢复数据库是需要指定配置文件来启动redis, 你也可以试试直接打开
下面讲一下如何在启动redis时指定配置文件
资源管理器打开 redis 根目录,搜索栏输入 cmd ,自动定位到当前目录
接着,输入如下命令,以指定配置文件的方式让 redis 服务器启动
redis-server.exe redis.windows.conf
这样,重启后的 redis 服务器会把持久化的数据自动恢复
AOF:日志记录的方式
这是一种日志记录的思想, 他可以对每一次命令后产生的变化进行持久化数据
在配置文件搜索如下关键字
appendonly
找到 appendonly no ,这表示关闭 aof ,把 no 换成 yes 即可开启
aof也可以进行手动配置一下自定义信息, 比如保存频率什么的
我们在配置文件搜索如下关键字
appendfsync
找到下面三行,分别表示
- #appendfsync always //每次操作都保存一次
- appendfsync everysec //每秒保存一次(默认保存方式)
- #appendfsync no //不保存
通过修改配置前的 # 号,可以选择开启那种保存方式
永久存储位置与恢复
默认会把文件存储在同目录下的 aof 文件中
以指定配置文件启动服务器,即可自动恢复,这操作与 RDB 方式相同