持久化
0、redis持久化方式
0、AOF,重启时加载 AOF 文件恢复数据;
1、RDB和AOF,重启只加载AOF文件恢复数据
2、RDB,启动加载dump.rdb数据
1、设置redis持久化时间(redis.conf )
RDB(默认):
save 900 1 # 900秒内有至少1个键被更改则进行快照
save 300 10 # 300秒内有至少10个键被更改则进行快照
save 60 10000 # 60秒内有至少10000个键被更改则进行快照
AOF:
开启AOF
appendonly yes
设置AOF存储文件
appendfilename appendonly.aof
配置redis自动重写AOF文件的条件
auto-aof-rewrite-percentage 100 # 当目前的AOF文件大小超过上一次重写时的AOF文件大小的百分之多少时会再次进行重写,如果之前没有重写过,则以启动时的AOF文件大小为依据
auto-aof-rewrite-min-size 64mb # 允许重写的最小AOF文件大小
配置写入AOF文件后,要求系统刷新硬盘缓存的机制
appendfsync always
恢复
误操作 flushall 恢复(AOF)
0, AOF 是redis持久化数据一种格式。redis启动时候会加载AOF文件命令载入内存
1, 编辑AOF文件找到flushall的命令,删除该命令并重新启动服务
0 关闭redis的存储操作
redis-cli:6379 > SHUTDOWN NOSAVE
1 杀掉redis进程
pkill -9 redis
2 编辑打开AOF文件并删掉flushall命令
3 重启redis-server
redis-server /etc/redis.conf
4 查看redis数据
redis-cli:6379 > KEYS *