![阿里云OSS过期策略](/sites/jamesqi.com/files/inline-images/aliyun-oss-life-cycle.jpeg)
去年11月份开始,我们使用阿里云的冷归档服务进行数据备份,将不常用的备份数据使用阿里云的OSS服务来保存,并且希望设置这样的存储周期:
- Web访问日志文件:180天
- Web目录备份文件:365天
- MySQL数据库备份文件:730天
当时就按照文件名开头的部分设置了生命周期前缀,因为冷归档最少需要保存180天,所以即使设置1天后删除,实际上也需要等到180天才会删除。为了确认180天后会删除不再需要的文件,我设置了日历,前几天就提醒我查看是否按照生命周期设置删除了文件,但实际上查看发现并没有删除,自己检查也没有结果,后来咨询阿里云客服,才知道前缀不能只是目录下的文件名的前面一部分,而是要包含目录名称,文档请看:《基于最后一次修改时间的生命周期规则》,其中前缀设置的例子如下:
例如,某个Bucket有如下几个Object:
logs/programl/log1.txt
logs/program2/log2.txt
logs/program3/log3.txt
doc/readme.txt
如果生命周期规则指定的前缀是logs/,那么此规则仅作用于前三个以logs/开头的Object;如果指定的前缀是doc/readme.txt,则此规则则只对doc/readme.txt起作用。
于是我们重新进行了生命周期的设置如下:
![阿里云OSS生命周期设置](/sites/jamesqi.com/files/inline-images/aliyun-oss-life-cycle-settings.png)
过了24小时后查看设置为180天删除部分文件的目录中,果然去年11月份最早的一些文件就被删除了,所以设置正确☑️✌️
阿里云的客服还是要赞一下,遇到什么问题找他们还是基本上都可以得到专业、及时的回答👍
评论