본 게시물은 개인적인 의견으로 작성되었으니 절대적인 정보가 아닐 수 있습니다. 참고만 하시고 궁금한 사항이 있으시면 연락주세요.

티스토리 뷰

SQL Server - CATEGORY

SQL 로그파일 축소

시퀄人 2016. 7. 12. 20:57

   

use AGDB1_TMP

go

   

dbcc loginfo

Go

아래이미지의 Status 값이 2의 활성 VLF 까지만 축소가 가능합니다.

그래서 일반적으로 아래와 같이 수행을 하게 되면 status 2 인 VLF 이전까지 비우게 됩니다.

Shrinkfile 작업은 아래의 명령어로 가능합니다.

use AGDB1_TMP

go

dbcc shrinkfile('AGDB1_log', 500)

-- AGDB1_log 값은 sp_helpdb 의 로그의 논리적이 이름을 기입합니다.

-- 500 은 줄이고 싶은 크기 MB 단위입니다.

   

   

   

이를 해결하는 방법은 2가지 입니다.

방법.1 복구모델은 simple 로 변경 후 shrinkfile 을 수행한다.

USE [master]

GO

ALTER DATABASE [AGDB1_TMP] SET RECOVERY SIMPLE WITH NO_WAIT

GO

   

방법.2 트랜잭션 로그 백업을 받고 shrinkfile 을 수행한다.

backup log AGDB1_TMP to disk='NUL' with copy_only -- 옵션을 상황에 따라 추가함.

   

위 방법 2가지를 통해서 status 값을 비활성화 상태(0) 으로 변경후 shrinkfile 을 수행하면 됩니다.

   

   

[추가]

논리적인 이름은 아래와 같이 확인이 가능합니다.

   

sp_helpdb AGDB1_TMP

   

   

   

키워드 : 로그축소, 로그파일축소

   

   

   

댓글
댓글쓰기 폼
1 ··· 50 51 52 53 54 55 56 57 58 ··· 325