1.RDB和AOF优缺点
RDB: 快照,把当前内存里的状态快照到磁盘上
优点: 恢复速度快
缺点: 可能会丢失数据
AOF: 类似于mysql的binlog,重写,1秒写一次
优点: 安全,有可能会丢失1秒的数据
缺点: 文件比较大,恢复速度慢
2.配置RDB
vim /opt/redis_6379/conf/redis_6379.conf
save 900 1
save 300 10
save 60 10000
dir /data/redis_6379/
dbfilename redis_6379.rdb
结论:
- 执行shutdown的时候,内部会自动执行bgsave,然后再执行shutdown
- pkill kill killall 都类似于执行shutdown命令.会触发bgsave持久化
- 恢复的时候,rdb文件名称要和配置文件里写的一样
- 如果没有配置save参数,执行shutdown不会自动bgsave持久化
- 如果没有配置save参数,可以手动执行bgsave触发持久化保存
常用命令:
ll /data/redis_6379/ cat /opt/redis_6379/conf/redis_6379.conf vim /opt/redis_6379/conf/redis_6379.conf pkill redis redis-server /opt/redis_cluster/redis_6379/conf/redis_6379.conf redis-cli -h db01 redis-cli -h db01 shutdown bash for.sh
3.配置AOF
appendfilename “redis_6379.aof”
appendonly yes
appendfsync everysec
实验:
如果aof和rdb文件同时存在,redis会如何读取:
实验步骤:
1.插入一条数据
aof: 有记录
rdb: 没有记录
2.复制到其他地方
3.把redis停掉
4.清空数据目录
5.把数据文件拷贝过来
aof: 有记录
rdb: 没有记录
6.启动redis
7.测试,如果有新插入的数据,就表示读取的是aof,如果没有,就表示读取的是rdb
实验结论:
如果2种数据格式都存在,优先读取aof
微信赞赏
支付宝赞赏