SQL Server에는 세션 및 전역이라는 두 가지 유형의 추적 플래그가 있습니다. 세션 추적 플래그는 특정 연결에 대해 설정되며 해당 연결에서만 볼 수 있습니다. 전역 추적 플래그는 서버 수준에서 설정되며 서버의 모든 연결에서 볼 수 있습니다. 전역으로만 설정할 수 있는 플래그도 있고 전역 또는 세션 범위에서 설정할 수 있는 플래그도 있습니다.
다음 규칙이 적용됩니다.
-
전역 추적 플래그는 전역으로 설정해야 합니다. 그렇지 않으면 추적 플래그가 적용되지 않습니다. 시작 시 -T 명령줄 옵션을 사용하여 전역 추적 플래그를 설정하는 것이 좋습니다.
-
추적 플래그의 범위가 전역 또는 세션이면 해당 범위로 추적 플래그를 설정할 수 있습니다. 세션 수준에서 설정된 추적 플래그는 다른 세션에 영향을 주지 않으며 해당 세션을 연 SPID가 로그아웃하면 추적 플래그의 효과가 사라집니다.
다음 방법 중 하나를 사용하여 추적 플래그를 설정하거나 해제합니다.
-
DBCC TRACEON 및 DBCC TRACEOFF 명령을 사용합니다.
예를 들어 DBCC TRACEON 2528의 경우 추적 플래그를 전역으로 설정하려면 DBCC TRACEON (2528, -1)과 같이 DBCC TRACEON에 -1 인수를 사용합니다. 전역 추적 플래그를 해제하려면 DBCC TRACEOFF에 -1 인수를 사용합니다.
-
-T 시작 옵션을 사용하여 시작하는 동안 추적 플래그가 설정되도록 지정합니다.
-T 시작 옵션을 사용하면 추적 플래그가 전역으로 설정됩니다. 시작 옵션을 사용하여 세션 수준 추적 플래그를 설정할 수는 없습니다. 시작 옵션에 대한 자세한 내용은 SQL Server 서비스 시작 옵션 사용을 참조하십시오.
DBCC TRACESTATUS 명령을 사용하여 현재 활성화되어 있는 추적 플래그를 확인할 수 있습니다.
동작 변경
SQL Server 2000에서는 간단한 DBCC TRACEON(1204)만으로 오류 로그에 교착 상태 보고를 설정할 수 있습니다. SQL Server 2008에서는 교착 상태 모니터 스레드에서 세션 수준 플래그를 볼 수 없기 때문에 플래그를 전역으로 설정해야 합니다.
동작 변경에 대한 자세한 내용은 SQL Server 2008 데이터베이스 엔진 기능의 주요 변경을 참조하십시오.