| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Linux持久化之RDB操作【redis】 -> 正文阅读 |
|
[大数据]Linux持久化之RDB操作【redis】 |
Redis
Redis是内存数据库,如果不将内存中的数据库 状态保存到磁盘,那么一旦服务器进程退出,服务器的数据库状态也会消失
在指定时间间隔后,将内存中的数据集快照写入磁盘 ;也就是行话说到Snapshot快照,它恢复时候直接读取快照文件到内存,进行数据的恢复 ;Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程结束,再用这个临时文件替换上次持久化好的文件,整个过程主进程是不进行任何IO操作的,这就确保了极高的性能,如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常铭感,那么RDB要比AOF方式更加高效,RDB的缺点是最后一次持久化的数据可能丢失,我们默认的就是RDB,一般情况不会修改这个配置! 默认情况下, Redis 将数据库快照保存在名字为 dump.rdb的二进制文件中。文件名可以在配置文件中进行自定义。
在进行 RDB 的时候,redis 的主线程是不会做 io 操作的,主线程会 fork 一个子线程来完成该操作; 这种工作方式使得 Redis 可以从写时复制(copy-on-write)机制中获益(因为是使用子进程进行写操作,而父进程依然可以接收来自客户端的请求。)
save的规则满足的情况下,会自动触发rdb原则
👇来自配置文件(
如果我把上面的代码进行修改
1.首先查看会话(Xshell里面的会话
2.删除bin目录下的dump.rdb
3.这个时候去启动另一个会话(
4.当我们再次打开会话1时候查看bin下的文件,会发现出现了一个新的
这就说明我们触发了save规则,会自动产生rdb文件 这个时候我们就算是重启了redis,然后再打卡我们依然可以访问到,关掉之前的值(
save
flushall命令 触发持久化规则 可以通过配置文件对 Redis 进行设置, 让它在“ N 秒内数据集至少有 M 个改动”这一条件被满足时, 自动进行数据集保存操作。
如果在这个目录下面存在dump.db文件,启动就会自动恢复其中的数据
优点:
缺点:
一般生产环境会备份rdb文件!!! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 9:47:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |