데이터베이스 개발자 Tip & 강좌

SQLER의 개발자들이 만들어가는 데이터베이스 사용자 Tip & 강좌 게시판입니다. SQL서버, Oracle, MySQL 등 여러 클라우드/오픈소스 기반 데이터베이스 개발 및 운영 관련 팁과 쿼리 노하우를 이곳에서 가장 먼저 접하실 수 있습니다. 많은 도움 되시길 바랍니다.

SSIS 로그 보관기간 설정 (CleanUp 기간 설정)

 

  • Version : SSIS Server 2005, 2008, 2008R2, 2012, 2014

 

SQL Server 2012에서 SSIS 패키지를 생성하고 1분마다 실행하도록 Job Agent에 등록하였다. 어느날 SQL Server의 디스크 부족 경고가 발생하여 확인해본 결과 SSISDB가 매우 큰 용량을 차지하고 있음을 알게 되었다.

처음엔 SSIS의 대규모 배치성 작업으로 인한 트랜잭션 로그 증가 때문인것으로 판단하여 SSISDB의 데이터베이스 속성을 Simple(단순)으로 변경하였는데 트랜잭션 로그는 더 이상 쌓이지 않았지만 데이터의 크기는 계속해서 증가하고 있었다.

 

SSISDB의 각 테이블에 대한 사용량을 확인한 결과 다음과 같은 테이블에서 많은 데이터가 생성되어 있음을 확인할 수 있었다. Internal.event_messages 의 경우 20GB이상 사용하고 있는 상태였다.

(아래 그림은 이미 최소 로깅을 적용한 후의 그림이다.)

 

 

SSIS는 실행 될 때 각종 실행 로그를 저장하게 되는데 로그를 보관하는 기간 및 로깅 수준 옵션을 설정하여 일정 기간이 지난 로그 삭제를 진행하거나 불필요한 로그를 쌓지 않게 할 수 있다. 속성을 변경하는 방법으로는 SSIDB에서 마우스 오른쪽을 클릭하여 [속성]을 선택한다.

 

 

카탈로그 속성을 확인해보면 [작업 로그] 항목에서 보존 기간 및 로깅 수준을 변경한다. 보존 기간의 경우 기본값으로 [365]일이 지정되어 있다. 로깅 수준은 [기본]으로 되어 있는데 보관주기를 설정하고 (필자의 경우 2일로 설정) 로깅 또한 없음으로 설정하여 로그를 남기지 않았다(단순 작업이어서 로그가 필요 없는 상태였음).

 

주기적으로 로그 정리를 활성화 하여 사용자가 설정한 기간 이후의 로그는 자동으로 삭제 되도록 하여 로그가 계속해서 증가하는 것을 방지 할 수 있다. 여기서 주의할 점은 대규모 데이터베이스에서 보존 기간을 크게 변경하여 정리할 경우(기존 보존 기간보다 많이 축소하였을 경우) 삭제하는데 오랜 시간이 걸릴 수 있다.

 

 

[참고자료]

http://benevold.blogspot.kr/2013/08/ssisdb-performance-problem.html



강성욱 / jevida@naver.com

Microsoft SQL Server MVP

Blog : http://sqlmvp.kr

Facebook : http://facebook.com/sqlmvp




No. Subject Author Date Views
1673 SQL Server 기본 백업 폴더 변경하기 jevida(강성욱) 2016.09.13 4080
1672 sp_helpindex 의 향상된 버전 minsouk 2016.05.17 4563
1671 Spatial Index (공간 인덱스) 생성, 수정, 삭제 jevida(강성욱) 2016.01.11 9344
1670 Spatial Indexing 개요 (공간 인덱스) jevida(강성욱) 2016.01.11 7517
1669 Event Session을 이용한 Session Health check jevida(강성욱) 2016.01.11 6916
1668 SQL Server 2012 XML 플랜을 통한 병렬화 되지 않는 이유 살펴보기 jevida(강성욱) 2016.01.11 7504
1667 Event Session을 이용한 SQL OS Session Schedule check jevida(강성욱) 2016.01.11 7295
1666 Event Session을 이용한 Memory Health check jevida(강성욱) 2016.01.11 6955
1665 Event Session을 이용한 CPU Health check jevida(강성욱) 2016.01.11 8448
1664 DMV를 이용한 I/O Health check jevida(강성욱) 2016.01.11 7339
1663 CONCAT 함수 (문자열 연결하기)와 주의 사항 jevida(강성욱) 2016.01.11 28012
1662 SQL Server 2012 Columnstore Index jevida(강성욱) 2016.01.11 7527
1661 SQL Server 2012 File Stream / Table 관련 DMV jevida(강성욱) 2016.01.11 4861
1660 SQL Server2012 DMV – 메모리 덤프, 서비스, 구성 확인 jevida(강성욱) 2016.01.11 4706
1659 SQL Server2012 향상된 디버깅 기능 jevida(강성욱) 2016.01.11 4380
1658 SQL Server2012 매개 변수 구성 jevida(강성욱) 2016.01.11 3491
1657 SQL Server2012 도움말 설치 jevida(강성욱) 2016.01.11 3456
1656 SQL Server2012 Checkpoint 제어 jevida(강성욱) 2016.01.11 5309
1655 SSIS 패지키의 메타데이터 유효성 검사 중지하기 jevida(강성욱) 2016.01.11 2950
» SSIS 로그 보관기간 설정 (CleanUp 기간 설정) jevida(강성욱) 2016.01.11 4303





XE Login