Skip to main content
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

恢复对象

您可以使用 S3 RestoreObject 请求来恢复存储在云存储池中的对象。

支持的请求类型

StorageGRID仅支持 RestoreObject 请求来恢复对象。它不支持 SELECT`修复类型。选择请求返回 `XNotImplemented

版本控制

(可选)指定 versionId`恢复受版本控制的存储桶中对象的特定版本。如果你没有指定 `versionId,该对象的最新版本被恢复

RestoreObject 在云存储池对象上的行为

如果一个对象已经存储在"云存储池",根据对象的状态,RestoreObject 请求具有以下行为。看"头部对象"了解更多详情。

备注 如果对象存储在云存储池中,并且该对象的一个或多个副本也存在于网格上,则无需通过发出 RestoreObject 请求来恢复该对象。相反,可以使用 GetObject 请求直接检索本地副本。
物体状态 RestoreObject 的行为

对象已导入StorageGRID但尚未由 ILM 评估,或者对象不在云存储池中

403 ForbiddenInvalidObjectState

对象位于云存储池中,但尚未转换为不可检索状态

`200 OK`沒有做出任何改變。

注意:在对象转换为不可检索状态之前,您无法更改其 expiry-date

对象已转换为不可检索状态

`202 Accepted`将对象的可检索副本还原到云存储池,保留天数为请求正文中指定的天数。在此期限结束时,对象将返回到不可检索的状态。

或者,使用 Tier`请求元素来确定还原作业需要多长时间才能完成(`ExpeditedStandard , 或者 Bulk)。如果你没有指定 Tier, 这 `Standard`层被使用。

重要:如果对象已转换到 S3 Glacier Deep Archive 或云存储池使用 Azure Blob 存储,则无法使用 Expedited`層。返回以下错误 `403 ForbiddenInvalidTierRetrieval option is not supported by this storage class

对象正在从不可恢复状态恢复

409 ConflictRestoreAlreadyInProgress

对象已完全恢复到云存储池

200 OK

*注意:*如果对象已恢复到可检索状态,您可以更改其 expiry-date`通过重新发出 RestoreObject 请求并使用新值 `Days。恢复日期根据请求的时间进行更新。