015-学习Redis-持久化方案-bgsave/rdb/aof

一、回顾Redis

bgsave:简单、需要频繁的敲击命令
dump.rdb:默认开启。会根据配置自动存储数据到rdb文件里面。缺点是容易丢失数据
appenonly.aof:实时把命令记录到aof文件当中,重启时会从aof中读取命令,也就是“从敲了一遍”。 缺点是:文件会越来越大

实际项目如何抉择:
允许小概率事件丢失,则rdb
不允许丢失事件,则aof更好一点

1、redis的特点

redis是一个内存中的数据结构存储系统。优点:内存操作速度比硬盘很快。缺点:但是内存没有办法保存数据。

2、redis提供了磁盘持久化

通过磁盘持久化功能,就可以把内存中的数据,持久化到磁盘当中去。数据就可以长时间的进行保存。

二、方案一:bgsave

1、如何操作

启动redis-cli 客户端,输入一条数据,并输入持久化命令basave就可以完成持久化数据。
在这里插入图片描述

2、优缺点

  • 优点:简单。一个命令,就可以将存储内存的数据,持久化到磁盘当中。
  • 缺点:频繁使用命令。每当存储一个数据,就需要使用此命令。

三、方案二:配置文件rdb

rdb是redis自带的持久化方案。默认会开启的。
redis保存到内存的数据,当达到规定的实际、更改Key的数量,会保存在/user/local/redis/bin/dump.rdb的文件中。

1、配置文件解说:

dump.rdb的文件,会根据配置多少秒发生Key的变化,就会把数据存到dump.rdb文件中去。当重新启动时,会先去dump.rdb中去取出数据,放在数据库当中。

1、dbfilename dump.rdb 文件名字
2、dir ./ 目录 。文件存在的位置
在这里插入图片描述
900秒之内只要有一个key发生变化,就会把key的值存储到磁盘当中。
在这里插入图片描述

2、优缺点:

优点:文件配置后,数据自动化持久化到磁盘。当更改配置后,就不需要在手动配置了。
缺点:不能事实持久化。例如在59秒,10000个数据发生了变化。突然宕机了,那么就会无法持久化。
在这里插入图片描述

四、方案三:aof

redis提供的第三种方案:aof
追加apendonly ,把我们输入的命令会追加到 appenonly中去,后台开启了一个线程,每当我们输入一条命令,就会把命令追加到appenonly文件当中。当我们重启项目时,会先来appenonly文件读取内容(相当于我们冲敲打一遍命令)。

1、 修改配置文件:

配置文件:vim /user/local/redis/bin/redis.conf
在这里插入图片描述

修改配置后,重启服务:

下面是重启服务前 以及 重启服务后,bin目录:
在这里插入图片描述
当我们插入一条数据后:发现.aof文件,会有相应的信息。
在这里插入图片描述
在这里插入图片描述

2、优缺点

优点:实时记录命令,实施持久化到磁盘

缺点:时间的积累,aof文件非常的大,时间的积累重启redis,就非常的慢。
当我们频繁使用redis,开了aof。有数万条数据,如果都放在aof当中,aof文件会非常的大。如果宕机了,并重启服务器后,redis会先去aof文件去读取命令,那么会去读数G的文件大小的内容。会非常的慢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值