关于Redis数据库三种持久化方案介绍

 更新时间:2022年01月24日 15:10:26   作者:胡烨林  
大家好,本篇文章主要讲的是关于Redis数据库三种持久化方案介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下

一、回顾Redis

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的文件大小的内容。会非常的慢。

总结

到此这篇关于关于Redis数据库三种持久化方案介绍的文章就介绍到这了,更多相关Redis持久化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • redis分布式锁的8大坑总结梳理

    redis分布式锁的8大坑总结梳理

    这篇文章主要介绍了redis分布式锁的8大坑总结梳理,使用redis的分布式锁,我们首先想到的可能是setNx命令,文章围绕setNx命令展开详细的内容介绍,感兴趣的小伙伴可以参考一下
    2022-07-07
  • 浅析Redis Sentinel 与 Redis Cluster

    浅析Redis Sentinel 与 Redis Cluster

    本文主要介绍Redis Sentinel 及 Redis Cluster的区别及用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06
  • 从原理到实践分析 Redis 分布式锁的多种实现方案

    从原理到实践分析 Redis 分布式锁的多种实现方案

    在分布式系统中,为了保证多个进程或线程之间的数据一致性和正确性,需要使用锁来实现互斥访问共享资源,然而,使用本地锁在分布式系统中存在问题,这篇文章主要介绍了从原理到实践分析 Redis 分布式锁的多种实现方案,需要的朋友可以参考下
    2024-07-07
  • 一篇文章带你彻底搞懂Redis 事务

    一篇文章带你彻底搞懂Redis 事务

    这篇文章主要介绍了一篇文章带你彻底搞懂Redis 事务的相关资料,需要的朋友可以参考下
    2022-10-10
  • 使用Redis实现JWT令牌主动失效机制

    使用Redis实现JWT令牌主动失效机制

    JWT是一种轻量级的身份验证和授权机制,它是一种 JSON 格式的数据串,通常用于客户端和服务端之间的单点登录(Single Sign-On, SSO)场景,本文给大家介绍了如何使用Redis来实现JWT令牌主动失效机制,需要的朋友可以参考下
    2024-08-08
  • Redis实现UV统计的示例代码

    Redis实现UV统计的示例代码

    本文主要介绍了Redis实现UV统计的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Redis 中ZSET数据类型命令使用及对应场景总结(案例详解)

    Redis 中ZSET数据类型命令使用及对应场景总结(案例详解)

    这篇文章主要介绍了Redis 中ZSET数据类型命令使用及对应场景总结,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-01-01
  • 如何使用redis中的zset实现滑动窗口限流

    如何使用redis中的zset实现滑动窗口限流

    滑动窗口限流是一种常见的流量控制方法,它限制了在一定时间窗口内的请求数量,下面是使用Redis ZSet实现滑动窗口限流的一个简单示例,需要的朋友可以参考下
    2023-09-09
  • 深入了解Redis的性能

    深入了解Redis的性能

    这篇文章主要介绍了Redis的性能,作者通过Visual Studio上的C#程序对其进行了分析,需要的朋友可以参考下
    2015-06-06
  • Redis做数据持久化的解决方案及底层原理

    Redis做数据持久化的解决方案及底层原理

    Redis有两种方式来实现数据的持久化,分别是RDB(Redis Database)和AOF(Append Only File),今天通过本文给大家聊一聊Redis做数据持久化的解决方案及底层原理,感兴趣的朋友一起看看吧
    2021-07-07

最新评论