2011-12-03 2 views
0

나는 mysql 덤프를 가져 와서 s3에 업로드하는 스크립트를 작성했으며 cronjob에 스크립트를 추가했으며 스크립트를 중반 밤 2시에 실행하고 MySQL 덤프를 S3에 업로드합니다. S3에 업로드하기 전에 날짜와 시간 스탬프를 파일 이름으로 사용하고 있습니다.주간 백업 관리

내 문제는 S3에서 7 일간의 백업을 관리해야하며 각 파일을 고유하게 만들기 위해 날짜와 시간 스탬프를 파일 이름으로 사용하고 있기 때문에 S3에서 8 일째 백업 파일을 자동으로 삭제해야합니다. 그것을하는 방법을 알아낼 수 없습니다.

또한 다른 EC2 인스턴스에서 최신 백업을 복원해야합니다.

답변

1

당신은 당신의 S3 버킷 호스트에서 XML 응답과 같은

http://YOUR_BUCKET.s3.amazonaws.com/ 

그것은 같은 XML을 반환해야 잡아 수 있습니다 -

<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> 
<Name>...</Name> 
<Prefix/> 
<Marker/> 
<MaxKeys>1000</MaxKeys> 
<IsTruncated>true</IsTruncated> 
<Contents> 
<Key>xxxx.gz (if you gzip the dump)</Key> 
<LastModified>2011-11-10T02:38:49.000Z</LastModified> 
<ETag>"xxxxx"</ETag> 
<Size>xxx</Size> 
<StorageClass>STANDARD</StorageClass> 
</Contents> 

그리고 LASTMODIFIED 노드의 값, 당신이 할 수와

파일 작성시기를 판별하십시오.
S3를 사용할 수 SDK의 API를
는 당신이 프로그래밍 한 후 사본을 다운로드 할 수 있습니다, 다른 언어입니다 가지고는 SDK의 API를 복제에 관해서는

, 당신은 다음 원래 S3 버킷에서 콘텐츠를 잡아 서로를 게시 할 수 있습니다 퍼지 S3 버킷.

SDK의 API 광고 - http://aws.amazon.com/sdkforphp/ (PHP)
http://aws.amazon.com/sdkfornet/ (닷넷)
http://aws.amazon.com/sdkforjava/ (자바)

0

백업 파일 사용 날짜 문자열을 파일 이름으로 만들고 -7 days 날짜를 사용하여 파일에 삭제가 필요한 을 파악할 수 있습니다.