redis持久化,rdb,aof
RDB(Redis DataBase)
AOF(Append Only File)
周阳语录:能撑过面试经理头一分钟最重要。头一分钟,决定人家还是否想跟你继续聊下去。
RDB
RDB就是在指定的时间内,将内存中的数据集写入磁盘。恢复时,将快照文件直接读到内存。
周阳语录:一定要跟上老员工的脚步,跟上了,人家才带你玩。想进步,就要有人带,就要跟对人。
save命令会强制备份,flushall也会强制备份!生成dump.rdb文件!
正常情况下,备份的机器和生产的机器不是同一个机器!
正常情况下,备份和恢复工作,或升级系统都在凌晨去处理!
rdb适合大规模的文件恢复,但是对于数据的完整性和一致性要求不高。
意外down掉的话,就会丢失最后一次快照。
新技术的出现,一定会借鉴老技术,并弥补老技术的不足。新技术是老技术的子集。AOF就这样诞生了!
AOF,记录所有的写操作语句。
df -h
查看磁盘空间。
AOF
AOF是以日志的形式记录每个写操作。将Redis执行过的所有写操作指令记录下来,只允许追加文件。redis启动之初会读取该文件重新构建数据,以完成数据恢复工作。
AOF保存的是appendonly.aof文件。
主从复制,读写分离比AOF更牛逼。
AOF和RDB是否可以同时存在?可以同时共同,但是如果开启AOF,优先查找AOF恢复数据,如果AOF出现数据错误,将无法启动REDIS服务。
redis-check-aof --fix appendonly.aof
可以修复出问题的aof文件!
周阳语录:面试老师通常都是一个大问题,下面跟一堆小问题。层层推进。
free -m
实用指令查看linux系统内存实用情况!
周阳语录:程序员三级,高级升职加薪,中级加薪不升职,低级老黄牛,只有苦劳。
Rewrite是什么,AOF采用文件追加方式,导致文件会越来越大。新增了重写机制,当AOF文件的大小超过所设定的阙值时,Redis就会启动AOF文件的内容压缩,只保留可以恢复数据的最小指令集。可以使用指令bgrewriteaof。
周阳语录:PPT、文档、脑图都是软实力的体现。逻辑清晰,条理分明,口齿伶俐。
Redis会记录上次重写时的AOF的大小,默认配置是当AOF文件大小是上次Rewrite后大小的一倍且大于64M时触发。
周阳语录:学技术要多跟大牛接触。大牛也是牛某个方面的。他们牛在于,他们有那个环境,去提升!事成就人,没有事就自己创造事。
建议同时开启RDB和AOF,两种手段!如果用redis只是为了使用缓存,不是为了持久化,可以两者都不开启!