Database/MS SQL

MS SQL 2008 이상 BACKUP LOG TRUNCATE_ONLY , NO_LOG

catchv 2013. 4. 23. 12:18
반응형

버전 : SQL 2008, SQL 2008 R2, SQL 2012

MS SQL 2008 부터는

BACKUP LOG [데이터베이스명] WITH TRUNCATE_ONLY
GO


를 지원하지 않고 있습니다.
이유는 이걸 사용했을 경우 로그체인이 끊어져서 데이터베이스에 문제가 발생 할 경우 데이터를 복구 할 수
없는 상태가 발생 할 수 있습니다.
그러나 관리상의 문제나 기타 다른 문제로 LOG의 백업이 당장 필요 없는 경우도 발생을 합니다.

그럴 경우 사용 할 수 있는 방법은 다음과 같습니다.

주의!!! 아래의 방법은 권장하는 방법이 아니므로 반드시 전체백업 후에 진행하기시 바랍니다.

저의 TestDB 상태입니다.


BACKUP LOG [데이터베이스명] TO DISK='NUL:'
GO



DBCC SHRINKFILE ([데이터베이스 로그 파일명], 1);


그런데 처음 한번 했을 경우 파일이 많이 줄지 않았습니다.
분명 위의 메시지에는 처리 되었다고 나오는데요. 한번 더 BACKUP LOG 를 해
주니 용량을 줄일 수 있었습니다. 이유가 궁금하네요





 

권장되지 않는 방법이므로 주의를 기울여서 사용하시기 바랍니다.

반응형

'Database > MS SQL' 카테고리의 다른 글

SQL Server Error Log 관리  (0) 2013.04.25
TRY CATCH는 과연 만고땡인가?  (0) 2013.04.23
Fill Factor  (0) 2013.04.16
암호화된 Procedure 보는 방법  (2) 2013.04.13
SSMS 관리자 전용 연결하기  (0) 2013.04.13