가끔 MS-SQL의 로그파일이 비정상적으로 커질때가 있다.

그럴경우 아래의 방법으로 로그파일의 물리적 용량을 줄일수가 있다.

 

* ​MS-SQL 2005이하 버전에서의 로그축소 방법

USE 데이터베이스명
BACKUP LOG 데이터베이스명 WITH NO_LOG
DBCC SHRINKFILE (데이터베이스명_log, TRUNCATEONLY)

* MS-SQL 2008이상에서의 로그축소 방법

USE 데이터베이스명
GO
ALTER DATABASE 데이터베이스명 SET RECOVERY SIMPLE
GO
DBCC SHRINKFILE(데이터베이스명_log, 10)
GO
ALTER DATABASE 데이터베이스명 SET RECOVERY FULL
GO

* 기존 로그파일을 줄이는 방법입니다.

USE DB명
BACKUP LOG DB명 WITH TRUNCATE_ONLY
DBCC SHRINKFILE(DB명_log)

그러나 MS-SQL 2008 부터는  WITH TRUNCATE_ONLY  를 사용할수 없습니다.

 

MS-SQL 2008 부터는

복구 모델이 전체 였으면 단순으로 변경하고 로그파일을 줄여야 합니다.

USE DB명
GO
ALTER DATABASE DB명 SET RECOVERY SIMPLE
GO
DBCC SHRINKFILE(DB명_log)
GO
ALTER DATABASE DB명 SET RECOVERY FULL  
블로그 이미지

디츠

“말은 쉽지, 코드를 보여줘.” “Talk is cheap. Show me the code.” – 리누스 토르발스(Linus Torvalds)

,