2011-12-08 5 views
1

가능한 경우 특정 SQL Server 데이터베이스의 백업 수를 구성 할 수있는 위치가 시스템 백업 폴더 내에 유지되는지 궁금합니다. 즉, 가능하면 오래된 백업을 자동으로 "정리"해야합니다.생성 된 .bak 파일의 SQL SERVER 수

또한 VS2010 데이터베이스 프로젝트가 있고 배포시 백업을 만들도록 지정할 수 있지만 백업을 얼마나 많이 생성할지 제어 할 수있는 방법이 있어야하며 가능한 경우 정리할 수있는 방법이 있어야합니다. up 이전 백업.

로드 된 질문을 알고 있지만 쉽게 할 수있는 방법이 있습니까?

감사합니다.

+0

[dba.stackexchange.com] (http://dba.stackexchange.com)에서 SQL Server DBA의 행 아웃을 알기를 요청해야합니다. 그들은이 사실을 알게 될 것입니다. –

답변

1

SQL Server's Maintenance Plans을 사용하여 데이터베이스를 백업 할 때 언제 그리고 얼마나 오래 백업을 삭제할지 제어 할 수 있습니다.

"Maintenance Cleanup Task"이라는 작업이 있는데 특정 데이터베이스의 모든 백업을 삭제하도록 설정할 수 있습니다. 은 X보다 오래되었습니다.

Here is a blog post 일반적인 잡았다를 설명하지만 필요한 설정으로 유지 관리 정리 작업을 보여줍니다.

+0

' 특정 데이터베이스에 보관되는 백업의 수를 제어하는 ​​기능 (불행한 점은 ..). 그래도 감사합니다! 매우 도움이 .. – Mani5556

+0

@ Mani5556 : 아니, 내가 아는 한 백업의 * 번호 *를 지정할 수 없습니다. 그런데 왜 이걸하고 싶니? 예를 들어 하루에 한 번씩 백업을 만들고 정리 작업을 설정하여 X 일보다 오래된 모든 항목을 삭제하면 유지중인 백업의 수를 정확히 알 수 있습니다. –

+0

우리는 최종 사용자의 데이터베이스가 업데이트 될 때만 백업을 수행하므로 반드시 1 일을 생성하지 않아도됩니다. – Mani5556

1

Christian이 말했듯이 유지 관리 계획은 시나리오를 지원하지 않습니다. 그리고 서버 측 코드 (TSQL 또는 CLR 프로 시저)는 파일 시스템과 상호 작용해야 할 때 종종 매우 어색합니다.

이렇게하면 OS 수준에서 가장 쉽게 할 수 있습니다. 유지 관리 계획이나 다른 방법을 사용하여 각 데이터베이스를 별도의 폴더에 백업 한 다음 Perl, PowerShell 또는 3 개 이상의 파일이있는 폴더에서 가장 오래된 파일을 삭제하는 스크립트를 작성하십시오. 시간, 일, 주 또는 출시 일정에 맞는 시간에 한 번씩 실행되도록 예약 할 수 있습니다.

관련 문제