Redis为了内部数据的安全考虑,会把本身的数据以文件
形式保存到硬盘中一份,在服务器重启之后会自动把硬
盘的数据恢复到内存(redis)的里边。
数据保存到硬盘的过程就称为“持久化”效果
相关指令
./redis-cli bgsave //异步保存数据到磁盘(快照保存)
./redis-cli 1h 127.0.0.1 -p 6379 bgsave
./redis-cli lastsave //返回上次成功保存到磁盘的unix时间戳
./redis-cli shutdown //同步保存到服务器并关闭redis服务器
./redis-cli bgrewriteaof //当日志文件过长时优化AOF日志文件存储
一.snap shotting快照持久化
该持久化默认开启,一次性把redis中全部的数据保存一份存储在硬盘中,如果数据非常多(10-20G)就不适合频繁进行该持久化操作。
1.快照持久化在本地硬盘保留的数据备份文件
2.快照持久化的备份频率:
在redis.conf配置文件中
save 900 1 #900 秒内如果超过 1 个 key 被修改,则发起快照保存
save 300 10 #300秒超过10个key被修改,发起快照
save 60 10000 #60秒超过10000个key被修改,发起快照
以上三个save的意思:
数据修改的频率非常高,备份的频率也高
数据修改的频率低,备份的频率也低
3.快照持久化文件的命名和存储位置:
在redis.conf配置文件中
4.手动发起快照持久化
./redis-cli -h 192.168.10.138 -p 6379 bgsave
//给定ip地址发起快照持久化
./redis-cli bgsave //本机发起快照持久化
二.append only file (AOF持久化)
本质:把用户执行的每个“写”指令(添加、修改、删除)都备份到文件中,还原数据的时候就是执行具体写指令而已。
1.开启AOF持久化(会清空redis内部的数据):
(同时可以修改备份文件的名字,默认是appendonly.aof)
在redis.conf配置文件中
2.配置文件被修改,需要删除旧进程,再根据新的配置文件启动新进程:
3.新进程启动好后会看到对应的aof持久化备份文件appendonly.aof:
4.aof追加持久化的备份频率:
在redis.conf配置文件中