几种redis备份方法的差异

33 阅读1分钟

防灾场景:
方案一:使用redis-cli命令行通过下面命令来备份:redis-cli BGSAVE。这个方案可以将redis整库保存下来。优点是简单快速,缺点是每次都需要上去服务端操作,而且恢复的时候会将目标机器的数据整库覆盖,假如目标机器有其他key的数据,就不适合用这种方法。

方案二:使用yunedit-redis来备份和恢复:通过客户端导出全部数据或部分数据,还能导出单个db的数据(一个redis有多个db), 优点是不会覆盖掉目标机器全部数据,灵活很多。缺点是不能用脚本定时备份。

迁移的场景:
最佳方案:使用yunedit-redis来备份和恢复,yunedit-redis支持导出部分数据,比如单个db,也支持导入部分数据,比较灵活,能支持夸库的迁移,数据导入的时候,不会删除目标redis实例的其他数据。

api导出场景:
方案:redis-shake:可通过api来做迁移,优点:可以定制化,缺点:执行速度慢,因为是程序员自己写的代码,执行迁移的效率很慢,而且容易出bug,而且需要开发,学习门槛比较高。