DB/MS-SQL

트랜잭션 로그 백업 및 크기 줄이기(축소)

채윤아빠 2008. 8. 29. 10:01
728x90
반응형
SQL 2005의 경우

TEST DB의 로그를 백업하기
 BACKUP LOG TEST TO DISK = "D:\Backup\Test_log.bak"
              -- WITH NO_LOG

트랜잭션 로그를 백업할 필요가 없는 경우, TO DISK 대신에 아래에 있는 WITH NO_LOG 를 주면 대부분의 활성 가상 로그 파일을 비활성화합니다. 그러면, 다음의 명령을 통하여 트랜잭션 로그 파일을 원하는 크기로 줄일 수 있습니다.
 
 
TEST DB의 로그 파일 줄이기
 
앞서 설명한 트랜잭션 로그를 백업하면 활성 가상 로그 파일이 비활성화되어, 로그 파일의 크기를 줄일 수 있게 됩니다. 다음 명령을 수행하면 TEST_LOG 파일이 10 MB 정도로 줄어들게 됩니다.
DBCC SHRINKFILE (TEST_LOG, 10) -- WITH NO_INFOMSGS
뒷 부분의 WITH NO_INFOMSGS 옵션을 주면, 처리 결과 정보를 표시하지 않습니다.
 
 
 
SQL 2000의 경우
 
BACKUP LOG TEST WITH TRUNCATE_ONLY -- 활성로그를 비활성화시킵니다.
DBCC SHRINKFILE (TEST_LOG, 10)

위 명령으로 TEST DB의 트랜잭션 로그 파일의 크기를 10MB 정도로 축소하였습니다.
 
 
참고자료
http://support.microsoft.com/kb/907511/ko : SQL Server 2005에서 DBCC SHRINKFILE 문을 사용하여 트랜잭션 로그 파일을 축소하는 방법
http://support.microsoft.com/kb/272318/ : SQL Server 2000에서 DBCC SHRINKFILE을 사용하여 트랜잭션 로그를 축소하는 방법