Database/MS-SQL

[스크랩] DBCC TRACE

99iberty 2016. 10. 26. 15:14


http://www.sqler.com/490202


이번에는.. 너무나 당연한 거지만... DBCC TRACE에 대해서 얘기를 꺼내보도록 하겠습니다.


DBCC TRACEON

DBCC TRACEOFF

DBCC TRACESTATUS


이렇게 3가지로 볼 수 있습니다.

ON, OFF, STATUS 단어만 봐도 대충 유추할 수 있습니다 ^^


각각의 플래그 값들은 MSDN을 참고합시다~~!

추적 플래그(Transact-SQL): http://msdn.microsoft.com/ko-kr/library/ms188396.aspx


새로운 새션 하나를 열어보도록 하죠~~!


Session 1


 
DBCC TRACEON(3226) --//3226: 백업 성공에 대한 로그를 SQL 로그에 기록 안함

DBCC TRACESTATUS()


127DD14D4F87DEED26BDF3







두번째 세션을 열어서 TRACESTATUS를 확인해봅시다.



Session 2




DBCC TRACESTATUS()


DBCC 실행이 완료되었습니다. DBCC에서 오류 메시지를 출력하면 시스템 관리자에게 문의하십시오.







아무 내용이 출력되지 않습니다~~

전역에 동일하게 적용되기 위해서는 어떻게 할까? 바로 -1 옵션을 쓰면 가능합니다!





Session 1


 
DBCC TRACEOFF(3226) --//일단 켜뒀던 걸 다시 OFF 하고

DBCC TRACEON(3226,-1)

DBCC TRACESTATUS()


1215234E4F950C25010B1E









Session 2


 

DBCC TRACESTATUS()


1215234E4F950C25010B1E






동일하게 적용된 걸 볼 수 있습니다. 참 쉽죵~~



만약 실수로 세션과 전역 둘다 on을 하게 된다면 어떻게 될까요?



Session 1


 
DBCC TRACEOFF(3226,-1) --//일단 켜뒀던 걸 다시 OFF 하고


DBCC TRACEON(3226)

DBCC TRACEON(3226, -1)

DBCC TRACESTATUS()


1906A03C4F950CA5133882





당근 하나가 활성화 되어있습니다~~!


Session 2


 

DBCC TRACESTATUS()


1215234E4F950C25010B1E





이 상태에서...  전역을 OFF 시키면??...


Session 1


 
DBCC TRACEOFF(3226,-1)

DBCC TRACESTATUS() 


127DD14D4F87DEED26BDF3






헉?? 전역 OFF 를 시켰지만 그대로 남아있네요~~ 왜 그럴까요?
세션 2를 확인해봅시다.

Session 2


 
DBCC TRACESTATUS()


DBCC 실행이 완료되었습니다. DBCC에서 오류 메시지를 출력하면 시스템 관리자에게 문의하십시오.




세션 2는 정상적으로 OFF 된걸 확인할 수 있었습니다.

즉... 현재 세션에 오픈 된 것도 같이 닫아주어야 합니다. 두개는 별개로 작동하나 봅니다~!

Session 1


 
DBCC TRACEOFF(3226)

DBCC TRACESTATUS() 


DBCC 실행이 완료되었습니다. DBCC에서 오류 메시지를 출력하면 시스템 관리자에게 문의하십시오.





DBCC TRACEOFF 해서 계속 추적이 안닫힌다고 생각하지 말고, 혹시 내가 추적한 것이 전역인지 현재 세션만인지 기억해봅시다.


그리고 제일 중요한 건..GLOBAL로 열리면 GLOBAL에 1이 표시가 되며

SESSION이 열리면.. SESSION에 1로 표시가 됩니다.


너무나 당연한 테스트 였네요~~^^;;


감사합니다 ~


참고문헌

DBCC TRACEON(Transact-SQL): http://msdn.microsoft.com/ko-kr/library/ms187329.aspx

DBCC TRACEOFF(Transact-SQL): http://msdn.microsoft.com/ko-kr/library/ms174401.aspx

DBCC TRACESTATUS(Transact-SQL): http://msdn.microsoft.com/ko-kr/library/ms187809.aspx

추적 플래그(Transact-SQL): http://msdn.microsoft.com/ko-kr/library/ms188396.aspx

필수 Trace Flag: http://www.sqler.com/320551


작성일자: 2012.04.13

수정일자: 2012.04.23

작성자: eastluck