이 문서는 이전에 다음 ID로 출판되었음: KR272318

요약

SQL Server 2000에서는 이제 로그를 축소하는 작업이 지연되지 않고 즉시 수행됩니다. 그러나, 일부 상황에서는 먼저 추가 작업을 수행해야 로그 파일을 원하는 크기로 축소할 수 있습니다.

추가 정보

DBCC SHRINKFILE을 실행할 때 SQL Server는 먼저 가상 로그 파일을 제거하여 로그 파일을 축소합니다. 대상 파일 크기로 축소되지 않았으면 SQL Server는 가상 로그가 채워질 때까지 마지막 가상 로그 파일에 더미(Dummy) 로그 항목을 넣고 로그의 윗 부분을 파일의 시작 위치로 옮깁니다. 그런 다음 트랜잭션 로그를 축소하는 작업을 완료하기 위해 아래와 같은 작업이 필요합니다.

로그의 활성 부분을 비우기 위해 BACKUP LOG 문을 실행합니다.

로그 파일이 대상 크기로 줄어들 때까지 원하는 대상 크기를 사용하여 DBCC SHRINKFILE을 다시 실행합니다.

 

아래 예제에서는 pubs 데이터베이스를 사용할 때 이 방법을 사용하여 pubs_log 파일을 2MB로 축소하는 단계를 보여줍니다.

1. DBCC SHRINKFILE(pubs_log, 2)을 실행합니다.

2. 대상 크기로 축소되지 않고 아래와 같은 메시지가 반환됩니다.

 

모든 논리 로그 파일이 사용 중이므로 로그 파일 2(Pubs_log)을(를) 축소할 수 없습니다.
DbId  FileId  CurrentSize  MinimumSize UsedPages     EstimatedPages
----- ------- ------------ ----------- ------------- ------------------
6     2       3048         128         3048          128  <- 여기 있는 모든 값은 변할 수 있습니다.

(1개 행 적용됨)
DBCC 실행이 완료되었습니다. DBCC에서 오류 메시지를 출력하면 시스템 관리자에게 문의하십시오.

 

3. BACKUP LOG pubs WITH TRUNCATE_ONLY를 실행합니다

4. DBCC SHRINKFILE(pubs_log,2)을 실행합니다.

5. 이제 트랜잭션 로그가 대상 크기로 줄어듭니다


자세한 내용은 SQL Server 2000 Books Online에서 "Shrinking the Transaction Log" 항목과 "DBCC SHRINKFILE" 항목을 참조하십시오.

SQL Server 7.0
에서 트랜잭션 로그를 축소하는 방법에 대해서는 Microsoft 기술 자료의 다음 문서를 참조하십시오.

256650 INF: SQL Server 7.0 트랜잭션 로그를 줄이는 방법

 

참고URL : http://support.microsoft.com/kb/317375/ko20

 

출처 : http://support.microsoft.com/kb/272318/

+ Recent posts