Tracing and Profiling

Tracing toolset은 170개 이벤트, 65 Column 정보를 모니터링 및 필터링 가능하다.
이번 챕터는 SQL Trace를 이용하여 약간의 공통된 문제를 풀어가는 방법에 대한 설명...
client-side trace이다.

*. internal trace components >> 다시 정리해 보자.. 무슨 말인지 모르겠다.
SQL Trace architecture의 중앙 컴포넌트는 trace controller이다. 어떤 소비자에 의해 모든 trace는 생성되고 관리되어 리소그가 관리 된다.

*. TRACE I/O providers

*. Security and Perimissions
traceing은 서버의 상태 뿐만 아니라 유저에 의한 데이타베이스로부터 결과 정보를 보내는 정보에 대한 많은 정보를 노출 시킨다. 개별적인 쿼리들의 모니터링 능력은 배치 또는 쿼리 플랜 레벨은 강력하고 꺼림직한다. 프로시져의 입력 arguments들의 많은 정보를 해커에게 노출시킬 수 있다.

이전 버젼에서는 administrator users(sysadmin)에서만 가능하다.  너무 유연하지 않다.

*. ALTER TRACE Permission
2005의 새로운 권한 중 ALTER TRACE를 불리워진다. 이것은 서버레벨 권한이다. trace를 start, stop modify a trace.. 기존의 풀 권한 보다 trace 권한을 줄 수 있는 것이면 될것 같다.

GRANT ALTER TRACE TO Jane;
예)

CREATE LOGIN JUDY WITH PASSWORD = '1136';
GO

use master
grant alter trace to judy

*. Protecting Sensitive Event Data
tracing engine은 그것 자체가 하나의 내재적으로 보안 기술을 유지한다. 요구되지 않은 눈에 대해서... access에 대한 trace를 꺼버린다. SQL Trace는 자동적으로 뺄것이다. 만일 하나의 이벤트가 패스워드와 관련된 스터오드 프로시져나 또는 구문에 대해서...

예) Create Login에 대해서는 trace off 시킨다... 진짜 안 보이네..
CREATE LOGIN JUDY WITH PASSWORD = '1136';
GO

--> 캡쳐를 뜬다.

이전버전에서는 패스워드에 대해서는 자동적으로 블랭크 처리 했다. 문자열이 sp_password를 찾아내면..
그러나 이 기능은 sql2005에 오면서 사라졌는데..  너는 그 보호에 대한 정보를 의조하지 말아야 한다.

또 다른 새로운 기능 sql trace는 암호화되는 모듈을 가지고 있는데. sql trace는 암호화된 저장 프로시져, 유저 펑션, 뷰 에 대한 텍스트 또는 쿼리 플랜 발생정보에 대한 리턴하지 않을 것이다.
다시 말해서, 이것은 내재적으로 중요한 정보를 안전하게 만들어 줄것이다.

Getting Started: Profiler

sql server component를 이용하여 가장 빠른 트러블링 슈팅 데이타베이스 이슈를 얻어낼 수 있는 도구이다.

replay event option <-- 실습 해본다..ㅋㅋ 이것을 이용하여 어떻게 trace 뜨는지..확인해 본다...

'SQL Server 2005' 카테고리의 다른 글

xp_ReadErrorLog  (1) 2008.07.08
MSSQL2005 최대 가용 인스턴스 수(컴퓨터당)  (0) 2008.07.07
T-SQL Querying  (2) 2008.04.29
Query Tunning  (0) 2008.04.17
SQL2005에서 간단한 단축키  (0) 2008.04.17

T-SQL Querying

실행계획, 실행계획 포함 수치

  쿼리스의 Subtree 비용과 실제 실행시간의 직접적인 척도를 기대하지 말아라. 하드웨어, 검색 알고리즘 기타 여러가지 요소가 존재한다.

*. Hint(index hints, join hints, parallelism, locking, compilation, and others)
1) JOIN HINT
    ex) inner merge join

2) QUERY HINT
    option(optimizer for(@od = '99999991231'))

3) TABLE HINT
    with(index = index_name)

'SQL Server 2005' 카테고리의 다른 글

MSSQL2005 최대 가용 인스턴스 수(컴퓨터당)  (0) 2008.07.07
Tracing and Profiling  (0) 2008.06.01
Query Tunning  (0) 2008.04.17
SQL2005에서 간단한 단축키  (0) 2008.04.17
DBCC 버퍼 및 실행계획 지우기 명령어  (0) 2008.04.16

Query Tunning

*. execute plan(Ctrl+L)
    : 쿼리를 실행하기 전에 실행계획을 생성한다.
      전체 데이타를 가지고 실행계획을 생성하는 것은 아니다.

*. 실행계획 포함(Ctrl+M)
   : 실행 결과로 실행시간에 모아진 정보로 측정한다.