更新时间:2026-10-10 GMT+08:00
分享

找回任意版本对象

开启了多版本控制后,如果由于意外操作或应用程序故障导致数据丢失,可以通过以下方法找回丢失的数据:

  • 通过彻底删除带删除标记的版本,来找回最近的历史版本对象,使得最近的历史版本对象成为最新版本对象。
  • 通过“恢复为最新版本”按钮,来找回指定历史版本对象,使得指定历史版本对象成为最新版本对象。
  • 通过复制指定版本的对象,来找回指定历史版本对象,使得指定历史版本对象成为最新版本对象。

前提条件

  • 对象所在桶已开启多版本控制。
  • 通过彻底删除带删除标记的对象来找回对象时,要求至少有一个不带删除标记的历史版本对象存在。

通过彻底删除带删除标记的版本来找回对象

桶开启多版本控制后删除对象时,对象不会被真正删除,OBS会插入一个删除标记来标识对象的最新版本是删除状态,之前的最新版本对象变为历史版本对象。可以通过彻底删除带删除标记的对象来找回已删除对象。

OBS支持通过管理控制台、API、SDK、obsutil方式删除带删除标记的版本来找回已删除对象,不支持通过OBS Browser+方式删除带删除标记的版本来找回已删除对象。

通过“恢复为最新版本”按钮来找回指定历史版本对象

如果您想要找回指定历史版本的对象,即让指定历史版本对象被找回作为最新版本对象,可以通过在OBS管理控制台单击对应历史版本对象操作列的“更多 > 恢复为最新版本”按钮来实现。

  1. 在OBS管理控制台左侧导航栏选择“桶列表”。
  2. 在桶列表中,单击待操作的桶,进入“对象”页面。
  3. 打开对象列表上方的“历史版本”开关。
  4. 在“最后修改时间”列找到带“历史版本”的对象,单击其操作列的“更多 > 恢复为最新版本”。

    图3 恢复为最新版本

  5. 在“恢复为最新版本”弹窗,单击“确定”。

    系统会复制出来一个指定历史版本对象副本作为最新版本对象,之前的历史版本对象保持不变。

通过复制指定版本对象来找回对象

OBS支持通过API、SDK方式在复制对象时指定对象的版本号来复制指定版本对象,不支持通过管理控制台、OBS Browser+、obsutil方式复制指定版本对象。

复制前,请先根据查看多版本对象(开启或暂停多版本状态下)查询到需要复制的版本对象的版本ID。

相关文档