千家信息网

Azure Storage系列之数据恢复

发表于:2024-11-25 作者:千家信息网编辑
千家信息网最后更新 2024年11月25日,这次来谈谈blob中数据恢复的问题,数据恢复向来都是大事儿,动辄就是卷铺盖卷滚蛋的下场,所以删除数据之前一定要慎重再慎重但是不管如何防护,总归还是会有数据被误删除的情况,如果在Azure中出现了这类问
千家信息网最后更新 2024年11月25日Azure Storage系列之数据恢复

这次来谈谈blob中数据恢复的问题,数据恢复向来都是大事儿,动辄就是卷铺盖卷滚蛋的下场,所以删除数据之前一定要慎重再慎重

但是不管如何防护,总归还是会有数据被误删除的情况,如果在Azure中出现了这类问题又该如何解决呢?

比如,我们不小心删除了Azure中的某些blob,那么如何才能恢复这些数据呢?


在18年以前,其实这是个很棘手的问题,因为数据删除了的话,那就真的删除了,但是18年之后微软推出了一项功能叫做soft delete,顾名思义就是软删除,这项功能可以保证数据删除之后我们还可以再把数据找回来,有点类似于回收站的概念吧


要注意的是,这项配置默认是不开启的,需要手动开启


下边来看具体如何操作

首先,我们先找到storage中有个叫data protection的,在这里就可以开启soft delete这项功能



开启之后,我们做两个测试

1.直接删除blob,然后进行恢复

2.删除blob之后,上传同样文件名的文件进行覆盖,再尝试恢复



首先来看第一个简单的

我们上传文件之后,点击删除


删除之后如果想恢复的话,可以直接在container里选择show deleted blobs,就可以看到被删除的blob了


如果想恢复的话也很简单,右键选择undelete即可


再来看第二种场景,如果我们删除了这个文件之后又上传了一个同名的文件进行覆盖,结果会怎么样呢?还能还原之前的文件吗

我们来看一下刚才删除的说明.htm这个文件,可以看到删除这个文件之后,是看不到快照的



但是如果我们上传一个同名的文件进行覆盖,会怎么样呢?

可以看到会多出一个叫delete snapshot的东西,那么如果我们想恢复这个被覆盖的数据怎么办呢?只需要undelete这个snapshot就可以了


所以,其实不需要担心在删除数据之后被覆盖的问题,Azure会用快照的方式保存这些被覆盖的文件



soft delete当然也不是尽善尽美的,有以下几点就需要注意

  • 软删除不会对存档层中的 blob 提供覆盖保护。 如果存档层中的 blob 被任何层中的新 blob 覆盖,则被覆盖的 blob 将永久过期。

  • 软删除仅适用于 blob(对象)存储

  • 软删除不适用于managed磁盘

  • 软删除适用于所有存储层,包括热、冷和存档。 但是,软删除对存档层中的 blob 不提供覆盖保护

  • 如果删除整个帐户或容器,将永久删除所有相关 blob

  • 关闭软删除后,仍能访问和恢复未过期的软删除数据




另外,还有一点,如果没启用软删除,或者是情况不符合使用软删除的条件,那么如果数据被删除的话,是不是就完全没有办法找回了?

其实也不尽然,后台其实还是有概率能帮你把数据找回来的,前提是时间够短,运气够好


所以,如果数据真的被无意或者恶意删除了的话,首先别做任何操作,之后马上提case给后台,请求他们帮忙把数据恢复回来,这才是正道

0