文章目录
- 1.RDB
- 1.介绍
- 2.RDB执行流程
- 3.持久化配置
- 1.Redis持久化的文件是dbfilename指定的文件
- 2.配置基本介绍
- 1.进入redis配置文件
- 2.搜索dbfilename,此时的dump.rdb就是redis持久化的文件
- 3.搜索dir,每次持久化文件,都会在启动redis的当前目录下生成,并且每次找的也是当前目录的dump.rdb文件进行恢复
- 3.持久化配置
- 1.修改dir的配置为/root/则每次持久化的dump.rdb都会在/root/下,恢复时无论在哪里启动,都会读取这个文件进行恢复
- 2.重启redis,使其生效
- 3.进入root目录下,可以看到dump.rdb生成了
- 4.默认快照配置
- 5.手动进行持久化操作
- 1.常用命令
- 2.一般在命令行使用bgsave进行异步快照操作
- 3.lastsave返回上一次保存的unix时间戳
- 6.flushall
-
- 7.其余rdb配置
- 1.save 如果要禁用持久化就设置为空串
- 2.stop-writes-on-bgsave-error 如果磁盘满了,就不再写入,推荐yes
- 3.rdbcompression 是否将快照进行压缩存储,默认yes
- 4.是否开启数据校验,默认yes
- 5.动态停止rdb(临时生效,重启就失效)
- 8.rdb配置实例
- 1.需求:如果Redis的key在30s内有五个key变化,就自动进行rdb备份
- 2. 编辑配置文件,找到save设置,进行配置
- 3.重启redis,使配置生效
- 4.去/root/目录下查看目前的持久化文件的大小
- 5.重新登陆redis命令行,在30s内设置至少五次key
- 6.在30s后查看持久化文件,变成104了
- 4.RDB备份和恢复
- 1.备份使用cp指令即可
- 2.恢复是在启动的时候读取配置文件中的dir的目录下的dump.rdb进行恢复
- 5.RDB的优势和劣势
-
- 2.AOF
- 1.基本介绍
-
- 2.开启AOF配置
- 1.开启方式
- 2.开启AOF
- 1.编辑配置文件找到appendonly,设置成yes
- 2.重启redis,使配置生效,在/root/目录下生成了aof文件
- 3.可以发现aof文件是空的,但是当RDB和AOF同时开启,默认读取的是aof文件,进行恢复,所以登录命令行,查看目前的库应该是空的
- 3.AOF机制实例
- 1.进入redis客户端,进行一些操作
- 2.查看aof文件,可以看到记录了set和del指令,并没有记录get指令
- 4.AOF恢复
- 在开启了AOF的条件下,启动Redis时,会自动读取配置文件中配置的dir目录下的aof文件进行恢复
- 5.AOF异常修复(数据可能丢失)
- 1.首先关闭redis,退出客户端
- 2.编辑aof文件,在最后添加一些字母
- 3.重启redis,发现启动失败了
- 4.执行在/usr/local/bin下的 redis-check-aof --fix 文件名 进行修复,由于/usr/local/bin是环境变量,就可以直接使用
- 5.此时再重新启动redis,可以看到启动成功
- 6.连接客户端,查看数据,由于之前是在文件后面加的内容,所以这次数据没有丢失
- 6.AOF同步频率(从缓冲区同步到aof文件的频率,用默认的即可)
- 7.Rewrite压缩
- 1.基本介绍
- 2.主动触发
- 3.修改配置,自动触发
- 4.关于配置自动触发的解析
- 8.AOF的优势和劣势
- 1.优势
- 2.劣势
- 3.如何选择?官方推荐都打开,不冲突,只是恢复的时候会使用aof文件进行恢复(数据一致性更好)
1.RDB
1.介绍
2.RDB执行流程
3.持久化配置
1.Redis持久化的文件是dbfilename指定的文件
2.配置基本介绍
1.进入redis配置文件
vim /etc/redis.conf
2.搜索dbfilename,此时的dump.rdb就是redis持久化的文件
3.搜索dir,每次持久化文件,都会在启动redis的当前目录下生成,并且每次找的也是当前目录的dump.rdb文件进行恢复
3.持久化配置
1.修改dir的配置为/root/则每次持久化的dump.rdb都会在/root/下,恢复时无论在哪里启动,都会读取这个文件进行恢复
2.重启redis,使其生效
3.进入root目录下,可以看到dump.rdb生成了
4.默认快照配置
- 如果没有打开注释,默认不会自动备份,只有在shutdown的时候才会备份
5.手动进行持久化操作
1.常用命令
2.一般在命令行使用bgsave进行异步快照操作
3.lastsave返回上一次保存的unix时间戳
6.flushall
1.介绍
7.其余rdb配置
1.save 如果要禁用持久化就设置为空串
2.stop-writes-on-bgsave-error 如果磁盘满了,就不再写入,推荐yes
3.rdbcompression 是否将快照进行压缩存储,默认yes
4.是否开启数据校验,默认yes
5.动态停止rdb(临时生效,重启就失效)
8.rdb配置实例
1.需求:如果Redis的key在30s内有五个key变化,就自动进行rdb备份
2. 编辑配置文件,找到save设置,进行配置
3.重启redis,使配置生效
4.去/root/目录下查看目前的持久化文件的大小
5.重新登陆redis命令行,在30s内设置至少五次key
6.在30s后查看持久化文件,变成104了
4.RDB备份和恢复
1.备份使用cp指令即可
2.恢复是在启动的时候读取配置文件中的dir的目录下的dump.rdb进行恢复
5.RDB的优势和劣势
1.优势
2.劣势
2.AOF
1.基本介绍
1.AOF是什么?
2.AOF持久化的流程
2.开启AOF配置
1.开启方式
2.开启AOF
1.编辑配置文件找到appendonly,设置成yes
2.重启redis,使配置生效,在/root/目录下生成了aof文件
3.可以发现aof文件是空的,但是当RDB和AOF同时开启,默认读取的是aof文件,进行恢复,所以登录命令行,查看目前的库应该是空的
3.AOF机制实例
1.进入redis客户端,进行一些操作
2.查看aof文件,可以看到记录了set和del指令,并没有记录get指令
4.AOF恢复
在开启了AOF的条件下,启动Redis时,会自动读取配置文件中配置的dir目录下的aof文件进行恢复
5.AOF异常修复(数据可能丢失)
1.首先关闭redis,退出客户端
2.编辑aof文件,在最后添加一些字母
3.重启redis,发现启动失败了
4.执行在/usr/local/bin下的 redis-check-aof --fix 文件名 进行修复,由于/usr/local/bin是环境变量,就可以直接使用
redis-check-aof --fix /root/appendonly.aof
5.此时再重新启动redis,可以看到启动成功
6.连接客户端,查看数据,由于之前是在文件后面加的内容,所以这次数据没有丢失
6.AOF同步频率(从缓冲区同步到aof文件的频率,用默认的即可)
7.Rewrite压缩
1.基本介绍
2.主动触发
3.修改配置,自动触发
4.关于配置自动触发的解析
- 第一个配置是自动触发的百分比,就是每次触发压缩,redis都会记录当前的文件大小,如果配置了100,就表示当文件大小是原来文件大小的(100 + 100) %也就是百分之二百时,自动触发压缩
- 第二个配置是自动触发的最小内存,配置的64mb,指的就是,文件最小是64mb才能够自动触发压缩机制
8.AOF的优势和劣势
1.优势
2.劣势
3.如何选择?官方推荐都打开,不冲突,只是恢复的时候会使用aof文件进行恢复(数据一致性更好)