我在内部运行Redis数据库,并希望制作“快照快照”。
我勒个去?是。我想每天将.rdb文件移动到S3的存储桶中。另外,它应该是计划的操作(可能使用cronTab函数)。
所以这实际上是我的问题:如果cronTab作业在SAVE操作(从redis到.rdb)的中间开始运行,我会遇到麻烦吗?丢失一些数据没有问题,我只是希望它能正常工作。
谢谢!
最佳答案
当Redis将RDB写入磁盘时,它将写入一个临时文件。保存过程完成后,将其重命名/移动到“dump.rdb”文件(或更改后的名称)。这是一个原子 Action 。因此,您应该使用建议的方法。
如果要对其进行更多控制,可以使用https://github.com/therealbill/redis-buagent之类的工具作为从属设备连接并生成其自己的RDB,然后将其存储在内存中,然后存储到S3中(或其他要存储的地方,例如Cloud Files或本地文件)或者使用redis-cli --rdb
生成一个“本地” RDB文件供您复制到S3。
关于redis - Redis的.rdb文件的操作是否为 “blocking”?例如,我可以在SAVE操作中间复制.rdb吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33353356/