开启与操作
开启与操作
aws s3api put-bucket-versioning --bucket my-backup-bucket \
--versioning-configuration Status=Enabled
aws s3api list-object-versions --bucket my-backup-bucket --prefix daily/ \
--query 'Versions[0:5].[Key,VersionId,IsLatest]' --output table
# 恢复被删除对象:先找到删除标记再移除
aws s3api delete-object --bucket my-backup-bucket --key daily/db.sql \
--version-id <delete-marker-version-id>| 删除语义 | 普通 DELETE 只加删除标记,历史版本仍保留 |
|---|---|
| 开关 | 版本控制只能暂停不能彻底关闭 |
| 成本 | 所有版本都占存储,需 NoncurrentVersionExpiration 清理 |
删除标记本身也是一个版本;移除标记即可让对象恢复可见,不需要重新上传。