SQL 문의 구현의 기본 추적 분석을 사용하여 SQL 서버

가장 최근의 SQL 구현을 확인하려면, SQL 서버의 성능을 추적하기 위해 SQL 서버에 SQL 추적기를 사용하지 않는 경우, 인터넷은 일반적으로 LogExprorer는, 인터넷이 오랫동안이 도구를 찾기 위해이 도구를 사용하지만, 찾을 수 없습니다이라고합니다.

 

오늘은 기사를 찾기 위해, 기본으로하는 이유 SQL 서버에 대한 기본 추적 파일이, SQL 추적을 사용할 수 있습니다 :

https://www.cnblogs.com/DBFocus/archive/2010/05/19/1739535.html

 

기본 기본 트랙을 열이 있는지 여부를 확인하는 경우 configuration_id = 1568 첫 번째는 내가이 기능은 기본적으로 활성화되어 있음을 나타냅니다, 여러 서버를 쿼리 기본적으로 열려있는, sys.configurations에서 선택 *를 사용합니다.

당신은 열려 있지, 사용을 할 경우 :

sp_configure를, 1 '고급 옵션을 보여';
이동
재구성을;
이동
, 1 sp_configure를 '기본 추적이 활성화';
이동
재구성을;
가다

엽니 다.

 

저장된 추적 파일 경로 추적 파일에 저장된 기본 데이터를 얻을 수 있습니다에서 :: fn_trace_getinfo (0) 선택 *를 사용합니다.

 

쿼리 관련 정보에 대한 다음과 같은 성명을 사용합니다 :

* 선택에서 :: fn_trace_gettable에서 ( 'C : \ 프로그램 Files \ Microsoft SQL 서버 \ MSSQL.1 \ MSSQL \ LOG \ log.trc', 0)

 

마무리 :

선택
로그인 명,
loginsid,
SPID,
호스트 이름,
가능 ApplicationName,
서버 이름,
databaseName을
개체 이름,
e.category_id,
[범주] 등 cat.name,
은 textData,
STARTTIME,
eventclass,
, --0表示eventsubclass을 저지表示1 시작
으로 e.name을 EventName을가
에서 :: fn_trace_gettable ( 'C : \ 프로그램 Files \ Microsoft SQL 서버 \ MSSQL.1 \ MSSQL \ LOG \ log.trc', 0)
내부는 sys.trace_events 전자에 가입
eventclass = trace_event_id에
내부 고양이로 sys.trace_categories 가입
에 e.category_id = cat.category_id
여기서 databaseName = 'TraceDB'어디
根据개체 이름来过滤- 개체 이름이 null이며,
e.category_id = 5 --category 5 개체 나타내고
46은이 47 드롭 객체를 나타내는 객체를 생성 오브젝트 (164)가 변경을 나타내는 나타냄 e.trace_event_id = 46을 --trace_event_id

 

 

쿼리 정보 테이블을 수정합니다 :

여기서 여기서 databaseName = 'TraceDB'및
개체 이름 = '을 MyTable'및
e.category_id = 5
e.trace_event_id = 164

 

정의 삭제 정보 테이블을 확인합니다 :

여기서 여기서 databaseName = 'TraceDB'및
개체 이름 = '을 MyTable'및
e.category_id = 5
e.trace_event_id = 47

 

 

추적은 또한 다른 이벤트를 추적 할 수 있습니다 기본. 예를 들어, 로그 파일의 급속한 성장은, 우리는 이유를 알 필요가있다. 기본 추적 캡처 이벤트는 문제를 해결하기위한 가치 성장을 기록합니다. 다음 쿼리는 기본 추적의 이벤트 로그 자동 성장 모두를 얻을 것이다.

선택
로그인 명,
loginsid,
SPID,
호스트 이름,
ApplicationName을,
서버 이름,
databaseName을
개체 이름,
e.category_id,
cat.name,
은 textData,
STARTTIME,
완료 시간,
지속 시간,
eventclass,
eventsubclass,
EventName을로 e.name을
에서 :: fn_trace_gettable ( 'C : \ 프로그램 Files \ Microsoft SQL 서버 \ MSSQL.1 \ MSSQL \ LOG \ log.trc ', 0)
내부 sys.trace_events 전자에 가입
eventclass = trace_event_id에
내부 고양이 같은 sys.trace_categories 가입
e.category_id = cat.category_id에
어디 databaseName을 = 'TraceDB'와
e.category_id = 2, 2表示데이터베이스를 --categroy
e.trace_event_id = 93 --93 이벤트는 로그 파일이 자동으로 성장을 나타냅니다

 

참조의 추적에 관한 편지 :

https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008-r2/ff848738(v=sql.105)

추천

출처www.cnblogs.com/kuku/p/11866032.html