728x90
MSSQL이 쿼리 컴파일 부하를 줄이려고 노력한 것이
상당히 귀찮은 일들을 불러들이는군요.
캐시 오브젝트는 최근 실행순으로 정렬됩니다.
아래 URL에서 코드를 정리했습니다.

SELECT
  qs.last_execution_time
, qs.creation_time          
, SUBSTRING
  ( sqltxt.text
  , qs.statement_start_offset / 2 + 1
  , ( CASE 
        WHEN qs.statement_end_offset = -1 THEN LEN(CONVERT(NVARCHAR(MAX), sqltxt.text)) * 2 
        ELSE qs.statement_end_offset
      END
      - qs.statement_start_offset
    ) / 2 + 1
  ) "cropped_text"
, qs.execution_count        , sqlplan.query_plan        , qs.plan_generation_num    
, qs.total_worker_time      , qs.last_worker_time       , qs.min_worker_time        , qs.max_worker_time        
, qs.total_physical_reads   , qs.last_physical_reads    , qs.min_physical_reads     , qs.max_physical_reads    
, qs.total_logical_writes   , qs.last_logical_writes    , qs.min_logical_writes     , qs.max_logical_writes    
, qs.total_logical_reads    , qs.last_logical_reads     , qs.min_logical_reads      , qs.max_logical_reads      
, qs.total_clr_time         , qs.last_clr_time          , qs.min_clr_time           , qs.max_clr_time          
, qs.total_elapsed_time     , qs.last_elapsed_time      , qs.min_elapsed_time       , qs.max_elapsed_time      
, sqlplan.encrypted         , qs.sql_handle             , qs.plan_handle            , sqltxt.text "raw_text"
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) sqltxt
CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) sqlplan
ORDER BY qs.last_execution_time DESC;

알 수 있는 정보
  1. 쿼리가 매개변수화 되었는가
  2. 플랜 확인
  3. 부하가 어느정도 되는가
  4. 재사용이 되는가
출처 : http://tsohr.tistory.com/279
728x90

MSSQL 2005에서 지원되는 dbmail을 사용하기 위한 방법 을 그냥 나열

일단 준비단계
------------------------------------------------------
EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = '계정이름 - hugyou',
    @description = '계정설명 - 전지전능하지 못한 hugyou',
    @email_address = '메일주소 - xxx@xxx.net',
    @display_name = '보여질 이름 - 메일 받을때 발신인에 찍힐 이름',
    @username='메일주소 - xxx@xxx.net or other',
    @password='비밀번호 - 비번',
    @mailserver_name = 'SMTP 서버 주소 - smtp.smtp.com'
go

EXECUTE msdb.dbo.sysmail_add_profile_sp
       @profile_name = '계정이름',
       @description = 'Profile used for 계정이름'
go

EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = '계정이름',
    @account_name = '계정이름',
    @sequence_number = 1
go

EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = '계정이름',
    @principal_name = 'public',
    @is_default = 1 ;
go

------------------------------------------------------



이제 보내봅시다
------------------------------------------------------
declare @body1 varchar(100)
set @body1 = '서버 :'+@@servername+ ' 첫 메일!'
EXEC msdb.dbo.sp_send_dbmail @recipients='보낼메일 주소 to@to.com 등등..',
    @profile_name = '계정이름',
    @subject = '메일 테스트',
    @body = @body1,
    @body_format = 'HTML' ;
------------------------------------------------------


다른 옵션은 books online의 sp_send_dbmail 을 찾아보시면 쿼리 결과를 그대로 보내는 법 등이 나와있음 입니다 :)

728x90

Windows XP 가 설치된 Laptop 테스트용으로 SQL Server 2005 Developer Edition(x86)을 설치합니다.


고가용성 테스트를 위해 3개의 인스턴스를 설치한 뒤 한꺼번에 SP2 + Cumulative update package 7
누적패치를 적용합니다.
테스트에 필요한 인스턴스를 충분히 설치한 뒤 서비스팩이나 HOTFIX
설치해야 합니다.
그렇지 않으면 인스턴스가 추가될 때마다 Service Pack과 Hotfix를 설치해야 하는
고생을 해야 합니다
.

 

[다운로드]

Microsoft SQL Server 2005 서비스 팩 2

http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=d07219b2-1e23-49c8-8f0c-63fa18f26d3a#filelist

 

X86 설치 파일을 다운로드 한 뒤 실행하여 설치를 시작합니다.
사용자 삽입 이미지



























기본값으로 MSSQLERVER(Default Instance), SECOND, THIRD Instance 를 한꺼번에 설치할 수 있습니다.

사용자 삽입 이미지


























인증 테스트 한 번 해봅니다.
사용자 삽입 이미지


























설치가 시작됩니다. 녹차 한 잔 마시고 옵니다.
사용자 삽입 이미지


























자, 설치가 완료되었습니다.

그럼, SQL Server Service 를 시작하고 Management Studio 를 실행해서 버전을 확인해 봅니다.

Build 3042 잘 보입니다.


[Query]

SELECT @@VERSION


[실행결과]

Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86)

Feb  9 2007 22:47:07

Copyright (c) 1988-2005 Microsoft Corporation

Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 2)

 


, 이제 SQLSECURITY.COM 에서 쓸만한(?) 누적 hotfix 를 찾아봅니다.

http://sqlsecurity.com/FAQs/SQLServerVersionDatabase/tabid/63/Default.aspx

사용자 삽입 이미지














이왕 테스트 머신이니 현재 최신 Cumulative HF7 으로 설치하겠습니다.
다운로드 받아 설치를 진행합니다.
설치 후 엔진 버전 Build 3239가 되는지 확인해 보겠습니다.

 

SQLServer2005-KB949095-x86-ENU.exe 실행

사용자 삽입 이미지
 

























역시 3개의 인스턴스 모두 한 번에 hotfix 를 적용할 수 있습니다.

사용자 삽입 이미지


























녹차 한 잔 더?
사용자 삽입 이미지


























설치가 완료 되었습니다.
사용자 삽입 이미지


























엔진 버전 3239 맞습니다. 완료~!
사용자 삽입 이미지


















[참고자료]

Cumulative update package 7 for SQL Server 2005 Service Pack 2

http://support.microsoft.com/?Kbid=949095

 


작성자 : Lai Go / 작성일자 : 2008.06.03

+ Recent posts