'분류 전체보기'에 해당되는 글 684건

  1. SQL 2008 테스트 환경 구축
  2. 네이밍 정리
  3. Tracing and Profiling
  4. T-SQL Querying 2
  5. Query Tunning
  6. SQL2005에서 간단한 단축키
  7. DBCC 버퍼 및 실행계획 지우기 명령어
  8. SQL 2000 master db 복구 방법이 뭐란 말인가 ㅠ.ㅠ
  9. RML
  10. SQL Disk 구성
1. SQL2008 평가판 다운로드
2. Sample Data 다운로드 사이트  : http://www.codeplex.com/MSFTDBProdSamples


----------------------------------------------
1. 샘플 데이타 복원 파일 구조
----------------------------------------------

restore filelistonly

from disk ='D:\SQL2008\SQL2008.AdventureWorks_OLTP_DB_v2008\Tools\Samples\AdventureWorks 2008 OLTP\AdventureWorks2008.BAK'

go
----------------------------------------------

LogicalName PhysicalName Type FileGroupName Size MaxSize FileId CreateLSN DropLSN UniqueId ReadOnlyLSN ReadWriteLSN BackupSizeInBytes SourceBlockSize FileGroupId LogGroupGUID DifferentialBaseLSN DifferentialBaseGUID IsReadOnly IsPresent TDEThumbprint
AdventureWorks2008_Data C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\AdventureWorks2008_Data.mdf D PRIMARY 188678144 35184372080640 1 0 0 2C60E72B-DFB6-4D73-BDCD-7E0A1DCB6FD9 0 0 188481536 512 1 NULL 0 00000000-0000-0000-0000-000000000000 0 1 NULL
AdventureWorks2008_Log C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\AdventureWorks2008_Log.ldf L NULL 2097152 2199023255552 2 0 0 F0E8D873-C028-4033-AC86-56A0B23706EA 0 0 0 512 0 NULL 0 00000000-0000-0000-0000-000000000000 0 1 NULL
FileStreamDocuments C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\Documents S DocumentFileStreamGroup 288166 0 65537 20000000005300002 0 EE73C45C-5D8D-47D4-91E8-44C80E8DBE97 0 0 327680 512 2 NULL 0 00000000-0000-0000-0000-000000000000 0 1 NULL

이야.. FileStreamDocuments 이 부분이 생겼다. 오메, 그렇군,, 파일 그룹에 대한 정보도 기록을 하는 구낭..

----------------------------------------------
2. 복원
----------------------------------------------


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

GROUPING SETS  (0) 2008.11.05
SQL2008 설치하기  (0) 2008.10.07
Accelerated SQL Server 2008  (0) 2008.08.07
델서버 + 윈도서버2008 + 시퀄2008  (0) 2008.07.21
WPD_Worth_the_Wait_013108  (0) 2008.07.10

네이밍 정리

저장 프로시져 접두어 Usp 시작
Get_ : 실행결과로써 어떤 값 또는 데이터 셋을 반환하는 경우 동사 구분
Set_ : 데이터 갱신작업 수행
Add_ :새로운 레코드 생성하는용도
Del_ : 레코드삭제
Chk_ : 어떤 데이터 또는 상태를 체크하는 기능을 수행
Bat : 여러 가지 복합적인 작업을 모아서 수행하는 배치 작업
Mng : 드문 경우이지만 어떤 개체에 관련된 일련의 작업들을 한 저장 프로시져에 모두 구현 해 놓구 GOTO 문으로 분기해서 사용...


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)
   : 실행 결과로 실행시간에 모아진 정보로 측정한다.
-- 실행계획 옵션
CTRL+L

-- 실행계획 포함 옵션
CTRL+M

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

T-SQL Querying  (2) 2008.04.29
Query Tunning  (0) 2008.04.17
DBCC 버퍼 및 실행계획 지우기 명령어  (0) 2008.04.16
SQL 2000 master db 복구 방법이 뭐란 말인가 ㅠ.ㅠ  (0) 2008.04.01
SQL Disk 구성  (0) 2008.03.14
물리적인 SQL OS의 메모리 CLEAR 시키는 명령어...
아래의 명령어는 전체 DB 에 해당한다.

-- 캐쉬에 저장되어 있던 버퍼 정보를 클리어 시키는 명령어
DBCC DROPCLEANBUFFERS;
GO
-- 실행계획 지우는 명령어
DBCC FREEPROCCACHE;
GO


-- 2009.04.08
-- Clear buffers
DBCC FREESESSIONCACHE
DBCC FREEPROCCACHE
DBCC FREESYSTEMCACHE('ALL')

CHECKPOINT
DBCC DROPCLEANBUFFERS
GO

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

Query Tunning  (0) 2008.04.17
SQL2005에서 간단한 단축키  (0) 2008.04.17
SQL 2000 master db 복구 방법이 뭐란 말인가 ㅠ.ㅠ  (0) 2008.04.01
SQL Disk 구성  (0) 2008.03.14
RAID 10 vs. RAID 5 Performance  (0) 2008.03.14

설명 방법과 같이 master db의 백업 버젼의 빌드 버젼과 현재 서버의 빌드 버젼 호환되게 설치를 했다.
아웅... 복구를 하여도,,,,,,,, 서버가 시작이 안된다. 내 방법에 뭐가 문제가 있다는 말인가?
도대체 무슨 문제양 ㅠ.ㅠ..................... 미치겠군.. 내일까지 완료해야 할것 같은데..
나도 내일 일정이 바쁜데 에효..ㅠ.ㅠ
하나를 알아두 제대로 알아야 하겠다.
얼마전에 복원햇는데 뭐가 문제란 말인가???

앗.. 해결했다...
히히히히히히.. 이것을 SQL 7.0에서 햇던 것 같은데 흑흑흑흑....

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

SQL2005에서 간단한 단축키  (0) 2008.04.17
DBCC 버퍼 및 실행계획 지우기 명령어  (0) 2008.04.16
SQL Disk 구성  (0) 2008.03.14
RAID 10 vs. RAID 5 Performance  (0) 2008.03.14
RAID 0, 1, 5, 0+1 의 이해  (0) 2008.03.14

RML



2014.04.25 SQL2014 버젼 추가


-- #######################################################
-- ReadTrace 를 위한 프로시져 만들기
-- #######################################################
use master
go

if object_id ('usp_Profiler_Baseline_Start') is not null
drop proc usp_Profiler_Baseline_Start
go

create   PROC dbo.usp_Profiler_Baseline_Start
 @DateTime datetime   -- 기한
, @maxfilesize bigint   -- 최대 용량
, @folder nvarchar(245)
, @time datetime    -- 추적시작시각
AS
 -- 반드시 필요한 항목을 수정 적용할 것, 파일이 존재하면 오류가 발생(오류: 12)
 -- Create a Queue
 declare @rc int
 declare @TraceID int
 
 IF @DateTime IS NULL
  SET @DateTime = getdate() + 1  -- 디폴트 내일
 IF @maxfilesize IS NULL
  SET @maxfilesize = 5  -- 디폴트: 5 MB


 -- 추가 내용, 파일명에 .trc 가 자동으로 붙는다
 declare @file nvarchar(245)
 set @file = @folder
       + 'ProfilerBaseline'
        + replace(@@SERVERNAME, '\', '$') 
        + convert(char(8),getdate(),112)

 -- 중요. 특정 시각까지 대기 후 시작
 WAITFOR TIME @time
 PRINT '추적 시작'

 -- rollover 안함: 0

 exec @rc = sp_trace_create @TraceID output, 2, @file, @maxfilesize, @Datetime

 if (@rc != 0) goto error
 
 -- Client side File and Table cannot be scripted
 
 -- Set the events
 declare @on bit
 set @on = 1
exec sp_trace_setevent @TraceID, 10, 1, @on
exec sp_trace_setevent @TraceID, 10, 3, @on
exec sp_trace_setevent @TraceID, 10, 8, @on
exec sp_trace_setevent @TraceID, 10, 10, @on
exec sp_trace_setevent @TraceID, 10, 11, @on
exec sp_trace_setevent @TraceID, 10, 12, @on
exec sp_trace_setevent @TraceID, 10, 13, @on
exec sp_trace_setevent @TraceID, 10, 14, @on
exec sp_trace_setevent @TraceID, 10, 15, @on
exec sp_trace_setevent @TraceID, 10, 16, @on
exec sp_trace_setevent @TraceID, 10, 17, @on
exec sp_trace_setevent @TraceID, 10, 18, @on
exec sp_trace_setevent @TraceID, 12, 1, @on
exec sp_trace_setevent @TraceID, 12, 3, @on
exec sp_trace_setevent @TraceID, 12, 8, @on
exec sp_trace_setevent @TraceID, 12, 10, @on
exec sp_trace_setevent @TraceID, 12, 11, @on
exec sp_trace_setevent @TraceID, 12, 12, @on
exec sp_trace_setevent @TraceID, 12, 13, @on
exec sp_trace_setevent @TraceID, 12, 14, @on
exec sp_trace_setevent @TraceID, 12, 15, @on
exec sp_trace_setevent @TraceID, 12, 16, @on
exec sp_trace_setevent @TraceID, 12, 17, @on
exec sp_trace_setevent @TraceID, 12, 18, @on
exec sp_trace_setevent @TraceID, 13, 1, @on
exec sp_trace_setevent @TraceID, 13, 3, @on
exec sp_trace_setevent @TraceID, 13, 8, @on
exec sp_trace_setevent @TraceID, 13, 10, @on
exec sp_trace_setevent @TraceID, 13, 11, @on
exec sp_trace_setevent @TraceID, 13, 12, @on
exec sp_trace_setevent @TraceID, 13, 13, @on
exec sp_trace_setevent @TraceID, 13, 14, @on
exec sp_trace_setevent @TraceID, 13, 15, @on
exec sp_trace_setevent @TraceID, 13, 16, @on
exec sp_trace_setevent @TraceID, 13, 17, @on
exec sp_trace_setevent @TraceID, 13, 18, @on
exec sp_trace_setevent @TraceID, 14, 1, @on
exec sp_trace_setevent @TraceID, 14, 3, @on
exec sp_trace_setevent @TraceID, 14, 8, @on
exec sp_trace_setevent @TraceID, 14, 10, @on
exec sp_trace_setevent @TraceID, 14, 11, @on
exec sp_trace_setevent @TraceID, 14, 12, @on
exec sp_trace_setevent @TraceID, 14, 13, @on
exec sp_trace_setevent @TraceID, 14, 14, @on
exec sp_trace_setevent @TraceID, 14, 15, @on
exec sp_trace_setevent @TraceID, 14, 16, @on
exec sp_trace_setevent @TraceID, 14, 17, @on
exec sp_trace_setevent @TraceID, 14, 18, @on
exec sp_trace_setevent @TraceID, 15, 1, @on
exec sp_trace_setevent @TraceID, 15, 3, @on
exec sp_trace_setevent @TraceID, 15, 8, @on
exec sp_trace_setevent @TraceID, 15, 10, @on
exec sp_trace_setevent @TraceID, 15, 11, @on
exec sp_trace_setevent @TraceID, 15, 12, @on
exec sp_trace_setevent @TraceID, 15, 13, @on
exec sp_trace_setevent @TraceID, 15, 14, @on
exec sp_trace_setevent @TraceID, 15, 15, @on
exec sp_trace_setevent @TraceID, 15, 16, @on
exec sp_trace_setevent @TraceID, 15, 17, @on
exec sp_trace_setevent @TraceID, 15, 18, @on
exec sp_trace_setevent @TraceID, 16, 1, @on
exec sp_trace_setevent @TraceID, 16, 3, @on
exec sp_trace_setevent @TraceID, 16, 8, @on
exec sp_trace_setevent @TraceID, 16, 10, @on
exec sp_trace_setevent @TraceID, 16, 11, @on
exec sp_trace_setevent @TraceID, 16, 12, @on
exec sp_trace_setevent @TraceID, 16, 13, @on
exec sp_trace_setevent @TraceID, 16, 14, @on
exec sp_trace_setevent @TraceID, 16, 16, @on
exec sp_trace_setevent @TraceID, 16, 17, @on
exec sp_trace_setevent @TraceID, 16, 18, @on
exec sp_trace_setevent @TraceID, 21, 1, @on
exec sp_trace_setevent @TraceID, 21, 3, @on
exec sp_trace_setevent @TraceID, 21, 8, @on
exec sp_trace_setevent @TraceID, 21, 10, @on
exec sp_trace_setevent @TraceID, 21, 11, @on
exec sp_trace_setevent @TraceID, 21, 12, @on
exec sp_trace_setevent @TraceID, 21, 13, @on
exec sp_trace_setevent @TraceID, 21, 14, @on
exec sp_trace_setevent @TraceID, 21, 16, @on
exec sp_trace_setevent @TraceID, 21, 17, @on
exec sp_trace_setevent @TraceID, 21, 18, @on
exec sp_trace_setevent @TraceID, 22, 1, @on
exec sp_trace_setevent @TraceID, 22, 3, @on
exec sp_trace_setevent @TraceID, 22, 8, @on
exec sp_trace_setevent @TraceID, 22, 10, @on
exec sp_trace_setevent @TraceID, 22, 11, @on
exec sp_trace_setevent @TraceID, 22, 12, @on
exec sp_trace_setevent @TraceID, 22, 13, @on
exec sp_trace_setevent @TraceID, 22, 14, @on
exec sp_trace_setevent @TraceID, 22, 16, @on
exec sp_trace_setevent @TraceID, 22, 17, @on
exec sp_trace_setevent @TraceID, 22, 18, @on
exec sp_trace_setevent @TraceID, 25, 1, @on
exec sp_trace_setevent @TraceID, 25, 3, @on
exec sp_trace_setevent @TraceID, 25, 8, @on
exec sp_trace_setevent @TraceID, 25, 10, @on
exec sp_trace_setevent @TraceID, 25, 11, @on
exec sp_trace_setevent @TraceID, 25, 12, @on
exec sp_trace_setevent @TraceID, 25, 13, @on
exec sp_trace_setevent @TraceID, 25, 14, @on
exec sp_trace_setevent @TraceID, 25, 16, @on
exec sp_trace_setevent @TraceID, 25, 17, @on
exec sp_trace_setevent @TraceID, 25, 18, @on
exec sp_trace_setevent @TraceID, 33, 1, @on
exec sp_trace_setevent @TraceID, 33, 3, @on
exec sp_trace_setevent @TraceID, 33, 8, @on
exec sp_trace_setevent @TraceID, 33, 10, @on
exec sp_trace_setevent @TraceID, 33, 11, @on
exec sp_trace_setevent @TraceID, 33, 12, @on
exec sp_trace_setevent @TraceID, 33, 13, @on
exec sp_trace_setevent @TraceID, 33, 14, @on
exec sp_trace_setevent @TraceID, 33, 16, @on
exec sp_trace_setevent @TraceID, 33, 17, @on
exec sp_trace_setevent @TraceID, 33, 18, @on
exec sp_trace_setevent @TraceID, 37, 1, @on
exec sp_trace_setevent @TraceID, 37, 3, @on
exec sp_trace_setevent @TraceID, 37, 8, @on
exec sp_trace_setevent @TraceID, 37, 10, @on
exec sp_trace_setevent @TraceID, 37, 11, @on
exec sp_trace_setevent @TraceID, 37, 12, @on
exec sp_trace_setevent @TraceID, 37, 13, @on
exec sp_trace_setevent @TraceID, 37, 14, @on
exec sp_trace_setevent @TraceID, 37, 16, @on
exec sp_trace_setevent @TraceID, 37, 17, @on
exec sp_trace_setevent @TraceID, 37, 18, @on
exec sp_trace_setevent @TraceID, 40, 1, @on
exec sp_trace_setevent @TraceID, 40, 3, @on
exec sp_trace_setevent @TraceID, 40, 8, @on
exec sp_trace_setevent @TraceID, 40, 10, @on
exec sp_trace_setevent @TraceID, 40, 11, @on
exec sp_trace_setevent @TraceID, 40, 12, @on
exec sp_trace_setevent @TraceID, 40, 13, @on
exec sp_trace_setevent @TraceID, 40, 14, @on
exec sp_trace_setevent @TraceID, 40, 15, @on
exec sp_trace_setevent @TraceID, 40, 16, @on
exec sp_trace_setevent @TraceID, 40, 17, @on
exec sp_trace_setevent @TraceID, 40, 18, @on
exec sp_trace_setevent @TraceID, 41, 1, @on
exec sp_trace_setevent @TraceID, 41, 3, @on
exec sp_trace_setevent @TraceID, 41, 8, @on
exec sp_trace_setevent @TraceID, 41, 10, @on
exec sp_trace_setevent @TraceID, 41, 11, @on
exec sp_trace_setevent @TraceID, 41, 12, @on
exec sp_trace_setevent @TraceID, 41, 13, @on
exec sp_trace_setevent @TraceID, 41, 14, @on
exec sp_trace_setevent @TraceID, 41, 16, @on
exec sp_trace_setevent @TraceID, 41, 17, @on
exec sp_trace_setevent @TraceID, 41, 18, @on
exec sp_trace_setevent @TraceID, 42, 1, @on
exec sp_trace_setevent @TraceID, 42, 3, @on
exec sp_trace_setevent @TraceID, 42, 8, @on
exec sp_trace_setevent @TraceID, 42, 10, @on
exec sp_trace_setevent @TraceID, 42, 11, @on
exec sp_trace_setevent @TraceID, 42, 12, @on
exec sp_trace_setevent @TraceID, 42, 13, @on
exec sp_trace_setevent @TraceID, 42, 14, @on
exec sp_trace_setevent @TraceID, 42, 15, @on
exec sp_trace_setevent @TraceID, 42, 16, @on
exec sp_trace_setevent @TraceID, 42, 17, @on
exec sp_trace_setevent @TraceID, 42, 18, @on
exec sp_trace_setevent @TraceID, 43, 1, @on
exec sp_trace_setevent @TraceID, 43, 3, @on
exec sp_trace_setevent @TraceID, 43, 8, @on
exec sp_trace_setevent @TraceID, 43, 10, @on
exec sp_trace_setevent @TraceID, 43, 11, @on
exec sp_trace_setevent @TraceID, 43, 12, @on
exec sp_trace_setevent @TraceID, 43, 13, @on
exec sp_trace_setevent @TraceID, 43, 14, @on
exec sp_trace_setevent @TraceID, 43, 15, @on
exec sp_trace_setevent @TraceID, 43, 16, @on
exec sp_trace_setevent @TraceID, 43, 17, @on
exec sp_trace_setevent @TraceID, 43, 18, @on
exec sp_trace_setevent @TraceID, 53, 1, @on
exec sp_trace_setevent @TraceID, 53, 3, @on
exec sp_trace_setevent @TraceID, 53, 8, @on
exec sp_trace_setevent @TraceID, 53, 10, @on
exec sp_trace_setevent @TraceID, 53, 11, @on
exec sp_trace_setevent @TraceID, 53, 12, @on
exec sp_trace_setevent @TraceID, 53, 13, @on
exec sp_trace_setevent @TraceID, 53, 14, @on
exec sp_trace_setevent @TraceID, 53, 16, @on
exec sp_trace_setevent @TraceID, 53, 17, @on
exec sp_trace_setevent @TraceID, 53, 18, @on
exec sp_trace_setevent @TraceID, 55, 1, @on
exec sp_trace_setevent @TraceID, 55, 3, @on
exec sp_trace_setevent @TraceID, 55, 8, @on
exec sp_trace_setevent @TraceID, 55, 10, @on
exec sp_trace_setevent @TraceID, 55, 11, @on
exec sp_trace_setevent @TraceID, 55, 12, @on
exec sp_trace_setevent @TraceID, 55, 13, @on
exec sp_trace_setevent @TraceID, 55, 14, @on
exec sp_trace_setevent @TraceID, 55, 16, @on
exec sp_trace_setevent @TraceID, 55, 17, @on
exec sp_trace_setevent @TraceID, 55, 18, @on
exec sp_trace_setevent @TraceID, 61, 1, @on
exec sp_trace_setevent @TraceID, 61, 3, @on
exec sp_trace_setevent @TraceID, 61, 8, @on
exec sp_trace_setevent @TraceID, 61, 10, @on
exec sp_trace_setevent @TraceID, 61, 11, @on
exec sp_trace_setevent @TraceID, 61, 12, @on
exec sp_trace_setevent @TraceID, 61, 13, @on
exec sp_trace_setevent @TraceID, 61, 14, @on
exec sp_trace_setevent @TraceID, 61, 16, @on
exec sp_trace_setevent @TraceID, 61, 17, @on
exec sp_trace_setevent @TraceID, 61, 18, @on
exec sp_trace_setevent @TraceID, 67, 1, @on
exec sp_trace_setevent @TraceID, 67, 3, @on
exec sp_trace_setevent @TraceID, 67, 8, @on
exec sp_trace_setevent @TraceID, 67, 10, @on
exec sp_trace_setevent @TraceID, 67, 11, @on
exec sp_trace_setevent @TraceID, 67, 12, @on
exec sp_trace_setevent @TraceID, 67, 13, @on
exec sp_trace_setevent @TraceID, 67, 14, @on
exec sp_trace_setevent @TraceID, 67, 16, @on
exec sp_trace_setevent @TraceID, 67, 17, @on
exec sp_trace_setevent @TraceID, 67, 18, @on
exec sp_trace_setevent @TraceID, 68, 1, @on
exec sp_trace_setevent @TraceID, 68, 3, @on
exec sp_trace_setevent @TraceID, 68, 8, @on
exec sp_trace_setevent @TraceID, 68, 10, @on
exec sp_trace_setevent @TraceID, 68, 11, @on
exec sp_trace_setevent @TraceID, 68, 12, @on
exec sp_trace_setevent @TraceID, 68, 13, @on
exec sp_trace_setevent @TraceID, 68, 14, @on
exec sp_trace_setevent @TraceID, 68, 15, @on
exec sp_trace_setevent @TraceID, 68, 16, @on
exec sp_trace_setevent @TraceID, 68, 17, @on
exec sp_trace_setevent @TraceID, 68, 18, @on
exec sp_trace_setevent @TraceID, 69, 1, @on
exec sp_trace_setevent @TraceID, 69, 3, @on
exec sp_trace_setevent @TraceID, 69, 8, @on
exec sp_trace_setevent @TraceID, 69, 10, @on
exec sp_trace_setevent @TraceID, 69, 11, @on
exec sp_trace_setevent @TraceID, 69, 12, @on
exec sp_trace_setevent @TraceID, 69, 13, @on
exec sp_trace_setevent @TraceID, 69, 14, @on
exec sp_trace_setevent @TraceID, 69, 16, @on
exec sp_trace_setevent @TraceID, 69, 17, @on
exec sp_trace_setevent @TraceID, 69, 18, @on
exec sp_trace_setevent @TraceID, 71, 1, @on
exec sp_trace_setevent @TraceID, 71, 3, @on
exec sp_trace_setevent @TraceID, 71, 8, @on
exec sp_trace_setevent @TraceID, 71, 10, @on
exec sp_trace_setevent @TraceID, 71, 11, @on
exec sp_trace_setevent @TraceID, 71, 12, @on
exec sp_trace_setevent @TraceID, 71, 13, @on
exec sp_trace_setevent @TraceID, 71, 14, @on
exec sp_trace_setevent @TraceID, 71, 16, @on
exec sp_trace_setevent @TraceID, 71, 17, @on
exec sp_trace_setevent @TraceID, 71, 18, @on
exec sp_trace_setevent @TraceID, 72, 1, @on
exec sp_trace_setevent @TraceID, 72, 3, @on
exec sp_trace_setevent @TraceID, 72, 8, @on
exec sp_trace_setevent @TraceID, 72, 10, @on
exec sp_trace_setevent @TraceID, 72, 11, @on
exec sp_trace_setevent @TraceID, 72, 12, @on
exec sp_trace_setevent @TraceID, 72, 13, @on
exec sp_trace_setevent @TraceID, 72, 14, @on
exec sp_trace_setevent @TraceID, 72, 16, @on
exec sp_trace_setevent @TraceID, 72, 17, @on
exec sp_trace_setevent @TraceID, 72, 18, @on
exec sp_trace_setevent @TraceID, 74, 1, @on
exec sp_trace_setevent @TraceID, 74, 3, @on
exec sp_trace_setevent @TraceID, 74, 8, @on
exec sp_trace_setevent @TraceID, 74, 10, @on
exec sp_trace_setevent @TraceID, 74, 11, @on
exec sp_trace_setevent @TraceID, 74, 12, @on
exec sp_trace_setevent @TraceID, 74, 13, @on
exec sp_trace_setevent @TraceID, 74, 14, @on
exec sp_trace_setevent @TraceID, 74, 16, @on
exec sp_trace_setevent @TraceID, 74, 17, @on
exec sp_trace_setevent @TraceID, 74, 18, @on
exec sp_trace_setevent @TraceID, 76, 1, @on
exec sp_trace_setevent @TraceID, 76, 3, @on
exec sp_trace_setevent @TraceID, 76, 8, @on
exec sp_trace_setevent @TraceID, 76, 10, @on
exec sp_trace_setevent @TraceID, 76, 11, @on
exec sp_trace_setevent @TraceID, 76, 12, @on
exec sp_trace_setevent @TraceID, 76, 13, @on
exec sp_trace_setevent @TraceID, 76, 14, @on
exec sp_trace_setevent @TraceID, 76, 16, @on
exec sp_trace_setevent @TraceID, 76, 17, @on
exec sp_trace_setevent @TraceID, 76, 18, @on
exec sp_trace_setevent @TraceID, 79, 1, @on
exec sp_trace_setevent @TraceID, 79, 3, @on
exec sp_trace_setevent @TraceID, 79, 8, @on
exec sp_trace_setevent @TraceID, 79, 10, @on
exec sp_trace_setevent @TraceID, 79, 11, @on
exec sp_trace_setevent @TraceID, 79, 12, @on
exec sp_trace_setevent @TraceID, 79, 13, @on
exec sp_trace_setevent @TraceID, 79, 14, @on
exec sp_trace_setevent @TraceID, 79, 16, @on
exec sp_trace_setevent @TraceID, 79, 17, @on
exec sp_trace_setevent @TraceID, 79, 18, @on
exec sp_trace_setevent @TraceID, 80, 1, @on
exec sp_trace_setevent @TraceID, 80, 3, @on
exec sp_trace_setevent @TraceID, 80, 8, @on
exec sp_trace_setevent @TraceID, 80, 10, @on
exec sp_trace_setevent @TraceID, 80, 11, @on
exec sp_trace_setevent @TraceID, 80, 12, @on
exec sp_trace_setevent @TraceID, 80, 13, @on
exec sp_trace_setevent @TraceID, 80, 14, @on
exec sp_trace_setevent @TraceID, 80, 16, @on
exec sp_trace_setevent @TraceID, 80, 17, @on
exec sp_trace_setevent @TraceID, 80, 18, @on
 
 
-- Set the Filters
 declare @intfilter int
 declare @bigintfilter bigint
-- 필터 조건
 exec sp_trace_setfilter @TraceID, 10, 0, 7, N'SQL 프로필러'
 exec sp_trace_setfilter @TraceID, 10, 0, 7, N'MS SQLEM'

--  exec sp_trace_setfilter @TraceID, 3, 0,0,5  -- 특정데이터 베이스만 잡을때


 -- Set the trace status to start
 exec sp_trace_setstatus @TraceID, 1
 
 -- display trace id for future references
 select '추적번호: ', TraceID=@TraceID
 goto finish
 
 error:
 select '오류:', ErrorCode=@rc
 
 finish:
go


-- #######################################################
-- 프로파일링 시작하기
-- #######################################################

declare @t datetime, @t1 datetime
 
set @t = dateadd(ss,2,getdate())
set @t1 = dateadd(mi,3,getdate()) -- 3분간 모니터링 (아주 안쓰는 시간대에.....)
 
-- set @t = convert(char(8), getdate(),112) +' 10:00:00'
-- set @t1 = convert(char(8), getdate(),112) +' 11:00:00'

EXEC dbo.usp_Profiler_Baseline_Start
      @DateTime = @t1            -- 기한
,      @maxfilesize = 100  -- 최대파일크기(MB)
,      @folder = 'c:\temp\' -- 주의. 경로에공백이있어서는안된다.
,      @time = @t               -- 시작시각

-- #######################################################
-- 프로파일링 이벤트 관찰하기
-- #######################################################

select * from ::fn_trace_getinfo (null)

-- #######################################################
-- 프로파일링 중지시키기
-- #######################################################

exec sp_trace_setstatus 2, 0
exec sp_trace_setstatus 2, 2

-- #######################################################
-- (콘솔) 로컬로 트레이스 파일을 옮긴후 데이터베이스 만들고나서 실행합니다.
-- #######################################################

cd "Program Files\Microsoft Corporation\RMLUtils"
ReadTrace -I"C:\Temp\ProfilerBaselineKIMMS.trc" -o"c:\temp\kimms" -S(local) -dkimmsOut -- 만들데이터베이스 kimmsOut


SQL Disk 구성

RAID 구성

    데이타 파일 : RAID 0(패리티 없는 디스크 스트라이핑은 읽기 /쓰기 성능 좋음) + 1(디스크 미러링)
       디스크 볼륨 4장 필요

      OS System, 로그 파일 : RAID 1
         디스크 볼륨 2장 필요
      RAID 0(디스크 스트라이핑)
         두개의 볼륨에다가 나눠서 쓰기 한다. 쓰기 속도가 빠르다.

      RAID 1(디스크 미러링)
         모든 데이타는 양쪽 드라이브에 모두 쓰여져야 한다, 그래서 쓰기는 느리지만, 읽기 성능은 빠르다. 왜냐하면  데이터 검색이 양쪽 디스크로 나눠 지기 때문이다. 
          OS System이용(드라이브를 완벽하게 이중화하기 때문)
          트랜잭션 로그는 순차적으로 쓰기 작업을 하고 롤백을 하는 경우만 읽기 동작을 하므로 트랜잭션 로그를 담는 드라이브 역시 권장


      RAID 5(패리티 있는 디스크 스트라이핑)
         다중 디스크 스트라이핑과 쓰여지는 데이터의 패리티 정보를 저장함으로써 내결합성을 제공


      • SQL 2005 에디션
      Edition Level  Database 파일 크기  CPU  RAM 지원 서비스
       Work Group 초급 수준  무제한  3G  제한된 복제, 전체 텍스트 검색 
      Standard  중간 규모  무제한 무제한  미러링, 데이터 마이닝, 데이터 통합 서비스 등을 포함  
      Enterprise  대규묘  무제한     

      테이블을 수평적으로 파티션 할 수 있다.  

      미러링, 데이터 마이닝, OLAP 분석 도구

      장애극복 클러스터링 

      • 메모리 사용 형태

        • 대 부분 권장 사항 최소 용량에 2배 정도되는 메모리 요구
        • SQL 2005와 기본적으로 시작되는 Windows 서비스 모두 약 256MB의 메모리 사용 
        • Analysis Service, Reporting Services, Notification Services와 같은 추가적인 데이타베이스 기능을 사용하게 되면 기본 메모리는 더 높이 올라가게 된다.  
        • Management Studio 을 사용하기 위해서 약 50MB ~ 60MB 추가 요구 
        • 하나의 사용자 연결을 위해서는 24KB의 메모리 소모  

       

        이 글은 스프링노트에서 작성되었습니다.