| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Redis的持久化之RDB -> 正文阅读 |
|
[大数据]Redis的持久化之RDB |
1.RDB是什么? ? ? ? ? 在指定得时间间隔内生成内存中整个数据集得持久化快照。快照文件默认被存储在当前文件夹中,名称为dump.rdb,可以通过dir和dbfilename参数来修改默认值。 也就是行话来讲得Snapshot快照,它恢复时将快照文件直接读到内存里。 持久化过程中,Redis会单独创建一个(fork)一个子进程来进行持久化,子进程会先将数据写入到一个临时文件中,待持久化过程结束了,再用这个临时文件替换上次持久化好的RDB文件。整个过程中,主进程不进行任何的IO操作的,这就确保了极高的性能。如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效。 注:fork的作用是复制一个与当前进程一样的进程。新进程的所有数据(变量,环境变量,程序计数器等)数值都和原进程一致,但是是一个全新的进程,并作为原进程的子进程。 我对RDB很熟悉,那你说一下你是怎么备份的? RDB是整个内存的压缩过的Snapshot,RDB的数据结构,可以配置复合的快照触发文件 1分钟内改了1万次, 或5分钟内改了10次, 或15分钟内改了1次 换句话说,Redis后台有一个监控调度一样,帮你默默的做工作 关于禁用 总结? 如何出发RDB快照 1.配置文件中默认的快照配置 在redis中设置值的时候会产生dump.rdb文件 最好是主机和备份机器是两台,防止硬件损坏 ?2.命令save或者是bgsave 这两个命令都可以迅速形成dump文件进行备份? 注意: save只管保存,其他的不管,全部阻塞。就是我在save的时候,数据就灌不进来了,redis就相当于哥们先等一下,我先把备份这件事情干了,你再弄新的数据,所有说一般备份都在晚上完成; bgsave:Redis后台异步进行快照操作,快照同时还可以响应客户端请求,可以lastsave命令获取最后一次成功执行快照的时间。 3.执行flushall命令,也会产生dump.rdb文件,但里边是空的,没有意义。 如何恢复 ?将备份文件(dump.rdb)移动到redis安装目录并启动服务即可。就能自动的从硬盘文件里边读回内存 优势: 适合大规模的数据恢复,对数据完整性和一致性要求不高;也就是说你一步小心把redis给kill了,那最近的数据给搞丢了 劣势: 在一定的间隔时间做一次备份,所以如果redis意外down的话,就会丢失最后一次快照后的所有修改 fork的时候,内存的数据被克隆了一份,大致2倍膨胀性需要考虑内存的空间 小总结: ?? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/23 23:19:48- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |