redis备份恢复
首先登陆redis,执行save命令做rdb备份
redis-cli -p 6379
SAVE
config get dir #获取备份文件目录
备份完成后,停止redis服务
redis-cli -p 6379 shutdown
拷贝redis备份文件dump.rdb到对应目录下,重启redis,恢复成功
最后发现拷贝之后redis未被正确恢复:
经过查阅资料发现是同时开启了rdb和aof两种备份方式,这样redis会优先走aof还原。
另外开启rdb备份save 不能为空 save ‘’ 这样不行哈需要开启备份
备份完成后,开启aof备份,然后重启redis
注意:
1、拷贝dump.rdb文件到redis 数据文件夹下
2、启动redis,此时如果redis同时开启了aof生成策略,redis会先加载aof,如果没有则生成一个aof
3、此时如果get key获取rdb中的备份数据会发现并没有获取到,这是由于redis启动时,基于新的内存重新生成了一个新的rdb文件,覆盖了备份的rdb文件
4、遇到这种情况应该先把aof生成策略先关闭,即把redis.conf文件中的appendonly 改为 no,然后重启redis
5、此时发现可以获取备份中的数据了,确认数据恢复后,这个时候要打开aof必须动态的打开,方法是进入客户端后,输入命令config set appendonly yes
6、确认设置是否成功,config get appendonly,返回yes ,说明已经设置成功,在此确认数据是否恢复,如果已经恢复,再次停止redis
7、然后修改配置文件,把redis.conf文件中的appendonly 改为yes,然后重启redis.
8、启动后,再次确认数据是否已经恢复,发现已经恢复。