BLOG main image
분류 전체보기 (45)
SQL Server 이야기 (45)
일상 (0)
Visitors up to today!
Today hit, Yesterday hit
daisy rss
tistory 티스토리 가입하기!
2008. 4. 7. 20:51

SQL Server 2005부터 DMV가 제공되고 있으며, DMV를 이용하여 기존에 확인 하기 힘든 내부 동작에 대해서 확인 할 수 있습니다.

아래 스크립트는 Buffer pool에 존재하는 페이지 정보를 보여주는 DMV이며

이 내용을 기반으로 INDEX Scan, Seek, ReadAhead, checkpoint 등에 대한 보다 깊은 동작 방법을 이해 할 수 있습니다.

select

    B.Database_id

    ,object_name(object_id,database_id) as ObjectName

    ,Page_id

    ,Page_Level

    ,Page_Type

    ,type_Desc

    ,Free_space_in_bytes

    ,is_modified

    ,Index_id

    ,A.Total_Pages as [할당된총페이지]

    ,A.USed_Pages

    ,A.Data_Pages

from sys.allocation_units a

    right outer join sys.dm_os_buffer_descriptors b

        ON a.allocation_unit_id = b.allocation_unit_id

    left outer join sys.partitions p

        ON a.container_id = p.hobt_id

WHERE B.database_id = db_id('Test')

    and (p.object_id IS NULL OR p.object_id > 100)

    and object_name(object_id,database_id) = 'test01'

Order by 1,2,3

 

 

송 혁, SQL Server MVP

sqler.pe.kr

nexondbteam.tistory.com