MSSQL 로그 줄이기 > db

본문 바로가기

db

MSSQL 로그 줄이기

페이지 정보

작성자 서방님 댓글 1건 조회 30회 작성일 10-04-09 12:59

본문

로그를 비우는 방법
BACKUP TRAN 데이터베이스명 WITH TRUNCATE_ONLY

로 지울 수 있다. - 이는 물리적인 크기를 줄이는게 아니라 단지 내용만 지우는 것입니다.

BACKUP TRAN vision2002 WITH TRUNCATE_ONLY
GO
use vision2002
GO
DBCC SHRINKFILE (vision2002_Log,10)
GO

 

 

 

 

MSSQL 트랜잭션 로그 파일 줄이는 방법
여기저기에 유사한 자료가 많은데, 잘 동작하지 않는게 많아서 이렇게 정리하였습니다.

1) 줄이려고 하는 DB의 현재 상태를 조회한다. (데이타베이스명이 photodb인 경우)

sp_helpdb photodb


2) 해당하는 DB의 트랜잭션 로그를 비운다.

BACKUP LOG photodb with NO_LOG


3) 해당하는 DB로 이동한다.

use photodb
-- master DB에서는 아래의 명령이 작동하지 않음 ^^


4) 로그파일의 물리적인 파일을 줄인다.

DBCC SHRINKFILE (photodb_log, TRUNCATEONLY)
-- 여기서 photodb_log는 위 1)에서 조회해서 나오는 트랜잭션 로그파일의 name을 말한다.
-- DB를 생성할때 기본적으로 DB명+"_log"의 형태로 설정이 된다.

5) 줄여진 트랜잭션 로그의 크기를 확인한다.

sp_helpdb photodb

 

 

 

 

 

이벤트뷰어에 MSSQL관련 에러메시지가 잔뜩 나와있어서 확인해 본 결과 트랜잭션 로그 파일이 139GB나 되었다. 남은공간 9MB.  해결방법은 해당 트랜잭션로그를 삭제하거나, 줄이는 방법인데, 아래와 같은 명령어를 쿼리분석기에서 실행하면 된다.

 

backup log DATABASE_NAME with truncate_only
dbcc shrinkdatabase(DATABASE_NAME, truncateonly)
dbcc shrinkdatabase(DATABASE_NAME, 500)

 

트랜잭션로그 크기를 500MB로 제한.

 

 

 

 

 


 

 

댓글목록

등록된 댓글이 없습니다.

Total 447건 1 페이지
게시물 검색

회원로그인

접속자집계

오늘
299
어제
446
최대
592
전체
38,817

그누보드5
Copyright © seobangnim.com All rights reserved.
자바스크립트를 활성화 하세요![ 브라우저에서 자바스크립트를 활성화하는 방법 ]