2007~2011/SQL Server2009. 9. 22. 00:01
SQL Server 서비스가 시작될 때마다 새로운 로그 파일이 생성되게 됩니다. 즉, 서비스를 재시작하지 않으면 Error Log 파일 size 가 크게 늘어날 수 있습니다.

기본적으로 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log 폴더에 ERRORLOG ~ ERRORLOG.n(1~6) 까지의 파일이 생성되게 됩니다. 기본값으로 로그 파일 개수를 6개로 제한하였기 때문입니다. 이것은 SQL Server 를 6번 재시작 한다면 그 이전 로그는 사라진다는 것을 의미합니다.


필요에 따라 Error Log 파일 개수를 변경할 수 있습니다. 

SSMS - Management - SQL Server Logs - Configure - '재활용 이전의 오류 로그 파일 수 제한' 변경


아래 자료는 10개로 변경한 뒤 그 결과를 확인한 그림입니다.




T-SQL 로 확인해 봅니다. 
EXEC xp_enumerrorlogs

보관 #        날짜                         로그 파일 크기(바이트)
----------------------------------------------------------------
0               09/21/2009  10:47        1708
1               09/21/2009  10:47        1976
10              09/18/2009  11:13        311706
2               09/21/2009  10:47        1976
3               09/21/2009  10:47        1976
4               09/21/2009  10:47        1976
5               09/21/2009  10:47        1976
6               09/21/2009  10:47        1976
7               09/21/2009  10:47        11480
8               09/21/2009  10:25        11814
9               09/18/2009  11:58        13948


추가로 Registry NumErrorLogs 값을 변경할 수도 있습니다.

HKEY_LOCAL_MACHINE', N'Software\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLServer\MSSQLServer', N'NumErrorLogs', REG_DWORD, 10



현재 설정된 값을 확인하기 위해서도 Reg 명령을 사용할 수 있습니다.

C:\>reg query "HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL10.mssqlserver\mssqlserver" /v NumerrorLogs



 
그리고 또 하나!
SQL Server Error Log 파일의 size 가 늘어나면 SSMS 에서 불러오는 데 작은 고통을 느낄 수 있습니다. 서비스를 재시작 하지 않고 단지 로그 파일만 순환(CYCLE) 시키는 방법이 있으니 아래 T-SQL 을 참조하시면 되겠습니다.

EXEC sp_cycle_errorlog ;


[참고자료]
sp_cycle_errorlog(Transact-SQL)


작성자 : Lai Go / 작성일자 : 2009.09.21
Posted by Lai Go