'shrinkfile'에 해당되는 글 1건

  1. 2013.05.20 SQL Server 로그파일 축소
MS SQL2013.05.20 09:44

 

[내용]

 

갑작스런 많은 양의 쿼리로 인하여 Log 파일이 급격하게 증가했을 경우, Log File(.ldf) 축소하는 방법을 알아봅시다.

 

 

[환경]

 

SQL Server 2008 R2

 

 

[장애 발생 시나리오]

 

아래 스크립트를 실행 합니다.

 

--데이터베이스를(shrinkDB) 생성합니다.

USE master

GO

 

CREATE DATABASE [shrinkDB]

 

--테이블을(shrinkLDF) 생성합니다.

USE shrinkDB

GO

 

CREATE TABLE shrinkLDF (txt VARCHAR(1024))

GO

 

--데이터파일 증가 트랜잭션을 발생 시킵니다.( 30 정도 발생 시키다가 중지합니다.)

DECLARE @i INT = 1

 

WHILE @i = 1

BEGIN

INSERT INTO shrinkLDF VALUES(REPLICATE('A',1024))

END

 

--로그파일 증가 트랜잭션을 발생 시킵니다.( 30 정도 발생 시키다가 중지합니다.)

DECLARE @i INT = 1

 

WHILE @i = 1

BEGIN

INSERT INTO shrinkLDF VALUES(REPLICATE('A',1024))

UPDATE shrinkLDF SET txt = (REPLICATE('B',1024))

WHERE SUBSTRING(TXT,1,1)='A'

END

 

중지방법: 빨간 네모를 클릭합니다. 

 

데이터파일(.mdf) 로그 파일(.ldf) 크기가 증가한 것을 확인합니다.

 

 

[ACTION]

 

활성 트랜잭션이 있는지 확인합니다.

 

 

로그 사이즈 사용량을 확인합니다.

 

 

로그 사용률이 높다면, 로그 백업을 통하여 사용률을 낮출 있습니다.

한번도 Full 백업을 진행하지 않았다면, Full 백업을 진행해야 Log 백업을 수행할 있습니다.

 

 

로그 사용량이 축소한 것을 확인할 있습니다.

이것은 사용량이 줄어든 것이지, 실제 파일 용량이 줄어든 것은 아닙니다.

 

 

로그 파일을 축소를 진행합니다.

운영환경에 맞게 알맞은 크기를 지정합니다. (MB)

 

 

해당 로그 파일을 탐색기 상으로 축소가 것을 확인합니다.

 

 

[참고]

http://msdn.microsoft.com/en-us/library/aa258824(v=sql.80).aspx

 

 

신고
Posted by TM ~ing