赞
踩
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
redis是内存数据库,当我们每次用完redis,关闭linux时,按道理来说,内存释放,redis中的数据也会随之消失。为什么我们再次启动redis的时候,昨天的数据还在,并没有消失呢?
- 是因为,每次关机时,redis会自动将数据备份到一个文件中:/usr/local/bin/dump.rdb
接下来我们就来全方位的认识 自动备份机制
vim redis.conf
/SNAP # 搜索
save 900 1 #900秒内,至少变更1次,才会自动备份
save 300 10 #300秒内,至少变更10次,才会自动备份
save 60 10000 # 60秒内,至少变更10000次,才会自动备份
注意:
如果你只是使用Redis的缓存功能,而不需要持久化,那么你就可以注释掉所有的save行停用该功能。然后可以直接一个空字符串来实现停用:save ""
注意:
当我们使用shutdown命令,redis会自动将数据库备份。所以,dump.rdb文件创建时间会更新。flushall
命令将数据全部删除,再次shutdown关机因为,当我们保存10条以上的数据时,数据备份起来了;然后删除数据库,备份文件中的数据,也没问题;
但是,问题出在shutdown上,这个命令一旦执行,就会立刻备份,将删除之后的空数据库生成备份文件,
将之前装10条数据的备份文件覆盖掉了,所以自动恢复失败。怎么解决这个问题呢?要将备份文件再备份。
我们前面已经备份了一个dump10.rdb的文件。
之前自动备份,必须更改好多数据,例如上边,我们改变了十多条数据,才会自动备份;现在,我只保存一条数据,就想立刻备份,应该怎么做?每次操作完成,执行命令 save 就会立刻备份
stop-writes-on-bgsave-error
:进水口和出水口,出水口发生故障与否
rdbcompression
:对于存储到磁盘中的快照,是否启动LZF压缩算法,一般都会启动,因为这点性能,多买一台电脑,完全搞定N个来回了。
rdbchecksum
:在存储快照后,是否启动CRC64算法进行数据校验;
dbfilename
:快照备份文件名字
dir
:快照备份文件保存的目录,默认为当前目录
优势and劣势
Append Only File
appendonly yes
appendfilename "appendonly.aof"
注意:
编辑这个文件,最后要 :wq! 强制执行
redis-server /opt/redis-5.0.4/redis.conf ![img](https://img-blog.csdnimg.cn/img_convert/9c0db8a5e8374c543196e88f90e94a8c.png) ![img](https://img-blog.csdnimg.cn/img_convert/f0c1c8d80bf672e0457d756d5ddd87d4.png) **网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。** **[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)** **一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!** ://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)** **一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。