관리 메뉴

Data Modeling Evangelist Kaien Kim's Blog

[SQLServer]DBCC명령어 모음 본문

DATA/SQLServer

[SQLServer]DBCC명령어 모음

2009. 4. 20. 16:35

============================================================================
1. DBCC CHECKALLOC

- 디스크 공간 할당 구조의 일관성을 검사
============================================================================

   DBCC CHECKALLOC
     ( '데이터베이스이름'
             [ , NOINDEX -- 시스템 테이블이 아닌 테이블의 클러스터되지 않은 인덱스를 검사하지 않음
                |
                 { -- 단일사용자모드에서만 사용가능
         REPAIR_ALLOW_DATA_LOSS  -- 일부데이터손실 될 수 있음
                     | REPAIR_FAST   -- 대충복구
                     | REPAIR_REBUILD   -- 모든복구작업수행 (인덱스다시생성)
                } ]
    )     [ WITH { [ ALL_ERRORMSGS | NO_INFOMSGS ] -- 에러메시지 표시여부
                     [ , [ TABLOCK ] ]   -- 공유잠금 (여기서는 무시)
                     [ , [ ESTIMATEONLY ] ]   -- 명령의 실행에 필요한 tempdb 공간의 예상크기를 표시
                }
        ]



============================================================================
2. DBCC CHECKCATALOG

- 시스템 테이블의 일관성과 시스템 테이블 간의 일관성을 검사
============================================================================

 DBCC CHECKCATALOG
      ( '데이터베이스이름'
     )    
 [ WITH NO_INFOMSGS ] 
 


============================================================================
3. DBCC CHECKCONSTRAINTS

- 지정한 테이블에서 특정 제약 조건이나 모든 제약조건의 무결성을 검사
============================================================================

 DBCC CHECKCONSTRAINTS
      [( '테이블이름' | '제약조건' )]
 [ WITH { ALL_ERRORMSGS | ALL_CONSTRAINTS } ]


============================================================================
4. DBCC CHECKDB

- 지정한 데이터베이스에서 모든 개체의 할당과 구조적 무결성을 검사
- 데이터베이스안에 있는 모든 내용의 무결성을 검사
- 가장 안정한 복구문
- DBCC CHECKDB 문을 최근에 실행했다면 CHECKALLOC, CHECKTABLE 을 실행할 필요가 없다.
- 병렬로 검사 수행 ( 추적 플래그 2528 을 쓰면 병렬검사를 해제할수 있다 )

- 검사내용
 - 인덱스와 데이터 페이지가 제대로 연결되어있는가?
 - 인덱스 정렬순서가 제대로 인가?
 - 포인터가 일치하는가?
 - 각 페이지의 데이터가 적절한가?
 - 페이지 오프셋이 적절한가?
============================================================================

 DBCC CHECKDB
      ( '데이터베이스명'
              [ , NOINDEX   -- 시스템 테이블이 아닌 테이블의 클러스터되지 않은 인덱스를 검사하지 않도록 지정합니다.
                 | { REPAIR_ALLOW_DATA_LOSS
                     | REPAIR_FAST
                     | REPAIR_REBUILD
                    } ]
     )    
 [
  WITH { [ ALL_ERRORMSGS ] -- 개체당 오류수를 무제한으로 표시
                     [ , [ NO_INFOMSGS ] ] -- 모든 정보 메시지와 사용한 공간보고서를 표시안함
                     [ , [ TABLOCK ] ]  -- 공유테이블 잠금
                     [ , [ ESTIMATEONLY ] ]  -- DBCC CHECKDB 실행에 필요한 tempdb 공간의 예상크기와 지정된 다른 옵션을 모두 표시
                    [ , [ PHYSICAL_ONLY ] ]  -- 검사를 제한 (페이지와 레코드헤더의 실제구조의 무결성, 페이지의 개체ID 와 인덱스 ID 간의 일관성 및 할당구조로 검사를 제한
                    }
        ]



============================================================================
5. DBCC CHECKFILEGROUP

- 지정한 파일 그룹에서 현재 데이터 베이스에 있는 모든 테이블의 할당과 구조적 무결성을 검사
============================================================================

 DBCC CHECKFILEGROUP
      ( [ { 'filegroup' | filegroup_id } ]
         [ , NOINDEX ]
     )    
 [
  WITH { [ ALL_ERRORMSGS | NO_INFOMSGS ]
                     [ , [ TABLOCK ] ]
                     [ , [ ESTIMATEONLY ] ]
                    }
        ]


============================================================================
6. DBCC CHECKIDENT

- 지정한 테이블의 현재 ID 값을 검사하고 필요하면 수정합니다.
============================================================================

 DBCC CHECKIDENT
      ( '테이블 이름'
          [ ,  { NORESEED
                      | { RESEED [ , new_reseed_value ] }
             }
          ]
     )


============================================================================
7. DBCC CHECKTABLE

- 지정한 테이블이나 인덱스된 뷰에 대해 데이터, 인덱스, text, ntext, image 페이지의 무결성을 검사합니다.
- 검사내용
 - 인덱스와 데이터 페이지가 제대로 연결되어 있는가?
 - 인덱스 정렬순서가 제대로 되어 있는가?
 - 포인터가 일치하는가?
 - 각 페이지의 데이터가 적절한가?
 - 페이지 오프셋이 적절한가?

- 테이블 잠금을 얻지 못하여 데이터 변경은 허용되지만 메타데이터의 변경을 방지하는 스키마 잠금을 허용
============================================================================

 DBCC CHECKTABLE
      ( '테이블이름' | '뷰명'

          [ ,  NOINDEX
              |  index_id   -- 인덱스 ID 번호
              | {  
    REPAIR_ALLOW_DATA_LOSS
                  |  REPAIR_FAST
                  |  REPAIR_REBUILD
    }
         ]

     )    
 [ WITH {
  [  ALL_ERRORMSGS
      |  NO_INFOMSGS
  ]
                [ , [ TABLOCK ] ]
                [ , [ ESTIMATEONLY ] ]
                [ , [ PHYSICAL_ONLY ] ]
               }
        ]


============================================================================
8. DBCC CLEANTABLE

- 삭제된 가변길이 열과 텍스트 열의 공간을 다시 사용
- ALTER TABLE DROP COLUMN 문을 사용하여 가변길이 열이나 text 열을 삭제한 후 공간을 반환하지만 고정길이 열이 삭제된 후에는 공간을 반환하지 않는다.

============================================================================

 DBCC CLEANTABLE
      ( { '데이터베이스이름' | 데이터베이스아이디 }
         , { '테이블이름' | 테이블아이디 | '뷰명' | 뷰아이디 }
         [ , batch_size ]  - 트랜잭션 당 처리되는 행 수 ( 값 지정 않으면 한 트랜잭션에서 전체테이블을 처리 )
     )



============================================================================
9. DBCC DBREINDEX

- 지정한 데이터베이스의 테이블에 대해 하나 이상의 인덱스를 다시 작성
- 시스템 테이블에 대해 사용할 수 없습니다.
============================================================================

 DBCC DBREINDEX
     (    
  [  'database.owner.table_name'   
               [ , index_name
    [ , fillfactor ]
   ]
         ]
     )    
 [ WITH NO_INFOMSGS ]


============================================================================
10. DBCC DBREPAIR

- 손상된 데이터베이스를 삭제합니다.
- 손상된 데이터베이스를 삭제할 경우에는 DROP DATABASE 를 사용하는 것이 좋습니다.

============================================================================



============================================================================
11. DBCC dllname(FREE)

- 지정한 확장 저장 프로시저의 동적 연결 라이브러리를 메모리에서 언로드합니다.

============================================================================

 DBCC DLL이름 ( FREE )


============================================================================
12. DBCC DROPCLEANBUFFERS

- 버퍼 풀에서 빈 버퍼를 모두 제거

============================================================================
 
 DBCC DROPCLEANBUFFERS



============================================================================
13. DBCC FREEPROCCACHE

- 프로시저 캐시에서 모든 요소를 제거
- 프로시저 캐시를 해제하면 임의 SQL 문이 캐시에서 다시 사용되지 않고 다시 컴파일됩니다.
============================================================================

 DBCC FREEPROCCACHE

============================================================================
14. DBCC INDEXDEFRAG

- 지정한 테이블이나 뷰의 클러스터된 인덱스와 보조 인덱스의 조각을 모음
- 인덱스 스캔성능을 향상시키기 위해 페이지의 물리적 순서가 왼쪽에서 오른쪽으로 잎 노드의 논리적 순서와 일치하다고 인덱스 잎 수준의 조각을 모음
============================================================================

 DBCC INDEXDEFRAG
      (
  { 데이터베이스이름 | 데이터베이스아이디 | 0 }
     ,  { 테이블이름 | 테이블아이디 | '뷰명' | 뷰아이디 }
            ,  { 인덱스이름 | 인덱스아이디 }
     )   


============================================================================
15. DBCC INPUTBUFFER

- 클라이언트에서 MSSQL 로 보낸 최종 명령문을 표시
- SP_WHO2 를 이용해서 spid 를 얻은후에 해당 spid 쿼리를 볼 수 있다.
- EventType, Parameters, EventInfo
============================================================================

 DBCC INPUTBUFFER (spid)


============================================================================
16. DBCC OPENTRAN

- 지정한 데이터베이스에서 가장 오래된 활성 트랜잭션과 가장 오래된 분산 및 비분산 복제된 트랜잭션에 대한 정보를 표시
============================================================================

 DBCC OPENTRAN
     (     { '데이터베이스이름' | 데이터베이스아이디} )
        [ WITH TABLERESULTS
             [ , NO_INFOMSGS ]
        ]


============================================================================
17. DBCC OUTPUTBUFFER

- 지정한 시스템 프로세스 ID 의 현재 출력버퍼를 16진수와 ASCII 형식으로 반환
============================================================================

 DBCC OUTPUTBUFFER ( spid )


============================================================================
18. DBCC PINTABLE / DBCC UNPINTABLE (해제)

- 테이블을 메모리에 고정 (플러시 하지 않음)
- 정말 자주 쓰이는 테이블의 경우
- 주의 : PINTABLE 은 성능을 향상시킬 수 있지만 주의해서 사용해야 합니다.
 커다란 테이블을 고정할 경우 많은 용량의 버퍼캐시를 사용하므로 다른 테이블에서 사용할 캐시가 부족하게 되어 성능저하가 발생 할 수 있음.

- UNPINTABLE 로 해제
============================================================================

 DBCC PINTABLE ( database_id , table_id )
 DBCC UNPINTABLE ( database_id , table_id )



============================================================================
19. DBCC PROCCACHE

- 프로시저 캐시에 대한 정보를 테이블 형식으로 반환
- SQL Server 성능 모니터는 프로시저 캐시에 대한 정보를 얻기위해 DBCC PROCCACHE 를 사용함
- 결과 집합

 num proc buffs    프로시저 캐시에 저장할 수 있는 저장 프로시저의 개수
 num proc buffs used   저장 프로시저를 보관하는 캐시 슬롯의 개수
 num proc buffs active   현재 실행 중인 저장 프로시저를 보관하는 캐시 슬롯의 개수
 proc cache size   프로시저 캐시의 전체 크기
 proc cache used   저장 프로시저를 보관하는 프로시저 캐시의 용량
 proc cache active   현재 실행 중인 저장 프로시저를 보관하는 프로시저 캐시의 용량

============================================================================

 DBCC PROCCACHE


============================================================================
20. DBCC SHOW_STATISTICS

- 지정한 테이블에서 특정 대상의 현재 배포 통계를 표시
- 결과집합

 Updated   통계가 마지막으로 업데이트된 날짜와 시간
 Rows    테이블의 행 수
 Rows Sampled   통계 정보를 위해 샘플링된 행 수
 Steps    배포 단계 수
 Density   첫 번째 인덱스 열 접두사의 선택도(자주 사용하지 않음)
 Average key length  첫 번째 인덱스 열 접두사의 평균 길이
 All density   인덱스 열 접두사 집합의 선택도(자주 사용함)
 Average length   인덱스 열 접두사 집합의 평균 길이
 Columns   전체 밀도 및 평균 길이가 표시되는 인덱스 열 접두사의 이름
 RANGE_HI_KEY   히스토그램 단계의 상위 바운드 값
 RANGE_ROWS   상위 바운드를 제외한 히스토그램 단계에 해당하는 예제의 행 수
 EQ_ROWS   히스토그램 단계의 상위 바운드 값과 동일한 예제의 행 수
 DISTINCT_RANGE_ROWS  상위 바운드를 제외한 히스토그램 단계에 있는 고유한 값 수
 AVG_RANGE_ROWS   상위 바운드(DISTINCT_RANGE_ROWS에 대해 RANGE_ROWS / DISTINCT_RANGE_ROWS > 0)를 제외한, 히스토그램 단계에 있는 중복 값의 평균 수
 
============================================================================
 
 DBCC SHOW_STATISTICS ( table , target )



============================================================================
21. DBCC SHOWCONTIG

- 지정한 테이블의 데이터와 인덱스에 대한 조각화 정보를 표시
- 인덱스가 심하게 조각난 경우에 조각난 정보를 감소시키는 방법
 - 클러스터된 인덱스를 삭제한 후 다시 만듬
 - DBCC INDEXDEFRAG | DBCC DBREINDEX 로 인덱스 다시 구성
- 결과집합

 Pages Scanned   테이블이나 인덱스의 페이지 수입니다.

 Extents Scanned  테이블이나 인덱스의 익스텐트 수입니다.

 Extent Switches  DBCC 문이 테이블이나 인덱스 페이지를 스캔하는 동안의 익스텐트 전환 횟수입니다.

 Avg. Pages per Extent  페이지 체인에서 익스텐트 당 페이지 수입니다.

 Scan Density [Best Count: Actual Count]
    Best count는 모든 데이터가 인접하여 있는 경우 이상적인 익스텐트 변경 횟수이고 
    Actual count는 실제 익스텐트 변경 횟수입니다. 스캔 밀도가 100이면 모든 데이터가 인접해 있고 100보다 작으면 일부 데이터가 조각화된 것입니다. 스캔 밀도는 % 단위입니다.

 Logical Scan Fragmentation
    인덱스의 잎 페이지 스캔에서 반환된 순서가 바뀐 페이지의 비율입니다. 이 값은 힙이나 텍스트 인덱스와는 관계가 없습니다.
    (순서가 바뀐 페이지란 IAM에 지정된 다음 페이지가 잎 페이지의 다음 페이지 포인터에서 가리키는 페이지와 다른 경우입니다.)

 Extent Scan Fragmentation
    인덱스의 잎 페이지 스캔에서 순서가 바뀐 익스텐트의 비율입니다. 이 값은 힙과는 관계가 없습니다.     (순서가 바뀐 익스텐트란 인덱스의 현재 페이지가 포함된 익스텐트가 물리적으로 이전 페이지가 포함된 익스텐트의 다음 익스텐트가 아닌 경우입니다. )

 Avg. Bytes free per page
    스캔된 페이지에서 사용 가능한 평균 바이트 수입니다. 이 값이 클수록 페이지의 채우기 비율이 낮으므로 값이 작을수록 좋습니다. 이 값은 행 크기에 따라 달라지며 행 크기가 크면 값이 커집니다.

 Avg. Page density (full) 평균 페이지 밀도입니다(단위: %). 이것은 행 크기를 고려한 값이므로 페이지의 채우기 비율을 더욱 정확하게 알 수 있습니다. 값이 클수록 좋습니다.

============================================================================

 DBCC SHOWCONTIG
     [    
  ( { table_name | table_id | view_name | view_id }
              [ , index_name | index_id ]
        )
     ]
      [ WITH {  ALL_INDEXES
                 |  FAST    -- 인덱스의 잎 또는 데이터 수준 페이지를 읽지 않음 (빠름)
   [ , ALL_INDEXES ]
                 |  TABLERESULTS   --결과를 추가 정보와 함께 행 집합으로 표시
   [ , { ALL_INDEXES } ]
                 [ , { FAST | ALL_LEVELS } ]
            }
     ]



============================================================================
22. DBCC SHRINKDATABASE

- 지정한 데이터베이스에서 데이터 파일의 크기를 축소시킴
- 파일 단위로 데이터 파일을 축소
- 데이터 파일과 로그파일의 대상 크기는 파일의 최소크기보다 작을수 없음
- NOTRUNCATE / TRUNCATEOLNY 는 데이터파일에는 적용되나 로그파일에는 적용되지 않는다.
============================================================================

 DBCC SHRINKDATABASE
      ( 데이터베이스이름 [ , 데이터베이스에 남겨둘 여유공간비율 ]

          [ , {   NOTRUNCATE  - 해제된 파일 공간을 데이터베이스 파일에서 보유
   |  TRUNCATEONLY  - 해제된 파일 공간을 운영체제에 반환
      }
  ]
     )



============================================================================
23. DBCC SHRINKFILE

- 관련 데이터베이스에 대해 지정한 데이터 파일이나 로그파일의 크기를 축소 시킴
============================================================================

 DBCC SHRINKFILE
      ( 
  {
  파일이름 | 파일아이디 }
           { [ , 변경할크기 ]
               | [ ,
    {
     EMPTYFILE  -- 지정한 파일의 모든 데이터를 동일한 파일 그룹의 다른파일로 마이그레이션, 더 이상 데이터를 저장할 수 없음.
    |  NOTRUNCATE  -- 해제된 파일 공간을 파일에 보유
    |  TRUNCATEONLY  -- 해제된 파일 공간을 운영체제에 반환
    }
     ]
         }
     )



============================================================================
24. DBCC SQLPERF

- 모든 데이터베이스에서 트랜잭션 로그공간의 사용에 관한 통계를 제공


- DBCC SQLPERF(LOGSPACE)
 
 결과 집합
 
 Database Name   로그 통계가 표시될 데이터베이스의 이름입니다.
 Log Size(MB)   로그에 사용 가능한 실제 공간의 크기입니다. Microsoft?? SQL Server™는 내부 헤더 정보를 위해 적은 양의 디스크 공간을 예약하므로 이것은 로그 공간에 원래 할당된 크기보다 작습니다.
 Log Space Used (%)  로그 파일에서 현재 트랜잭션 로그 정보가 차지하는 비율입니다.
 Status    로그 파일의 상태입니다(항상 0임).


- DBCC SQLPERF(UMSSTATS) : This Option returns data about SQL Server thread management.

 결과 집합

 Statistic                        Value
 -------------------------------- ------------------------
 Scheduler ID                     0.0 
 num users                        18.0  -- This is the number of SQL Server threads currently in the scheduler.
 num runnable                     0.0  -- This is the number of actual SQL Server threads that are runnable.
 num workers                      13.0  -- This is the actual number of worker there are to process threads. (This is the size of the thread pool.)
 idle workers                     11.0  -- The number of workers that are currently idle.
 work queued                      0.0 
 cntxt switches                   2.2994396E+7 -- The number of context switches between runnable threads.
 cntxt switches(idle)             1.7793976E+7 -- The number of context switches to the idle thread.
 Scheduler ID                     1.0
 num users                        15.0
 num runnable                     0.0
 num workers                      13.0
 idle workers                     10.0
 work queued                      0.0
 cntxt switches                   2.4836728E+7
 cntxt switches(idle)             1.6275707E+7
 Scheduler ID                     2.0
 num users                        17.0
 num runnable                     0.0
 num workers                      12.0
 idle workers                     11.0
 work queued                      0.0
 cntxt switches                   1.1331447E+7
 cntxt switches(idle)             1.6273097E+7
 Scheduler ID                     3.0
 num users                        16.0
 num runnable                     0.0
 num workers                      12.0
 idle workers                     11.0
 work queued                      0.0
 cntxt switches                   1.1110251E+7
 cntxt switches(idle)             1.624729E+7
 Scheduler Switches               0.0
 Total Work                       3.1632352E+7



- DBCC SQLPERF(WAITSTATS) : This Option returns data about wait types for SQL Server  resources.

- DBCC SQLPERF(IOSTATS)  : This Option returns data about outstanding SQL Server  reads and writers.

- DBCC SQLPERF(RASTATS)  : SQL Server read-ahead activity

- DBCC SQLPERF(THREADS)  : I/O, CPU, and memory usage per SQL Server Thread.



============================================================================

 DBCC SQLPERF ( LOGSPACE )


============================================================================
25. DBCC TRACEON / TRACEOFF
 
- 지정한 추적플래그를 설정 / 해제

============================================================================

 DBCC TRACEON ( trace# [ ,...n ] )
 DBCC TRACEOFF ( trace# [ ,...n ] )


============================================================================
26. DBCC TRACESTATUS
 
- 추적 플래그의 상태를 표시
- DBCC TRACESTATUS(-1) 로 하면 모든 추적 플래그의 상태를 표시
============================================================================

 DBCC TRACESTATUS ( trace# [ ,...n ] )



============================================================================
27. DBCC UPDATEUSAGE
 
- sp_spaceused 시스템 저장프로시저에서 잘못된 공간 사용정보가 보고되도록 하는 sysindexes 테이블의 부정확성을 보고하고 수정
- 테이블과 클러스터된 인덱스에 대해 sysindexes 테이블의 rows, used, reserved, dpages 열을 수정함
============================================================================

 DBCC UPDATEUSAGE
     (     { 'database_name' | 0 }
          [ , { 'table_name' | 'view_name' }
          [ , { index_id | 'index_name' } ] ]
     )
      [
  WITH    
   [ COUNT_ROWS ]   -- sysindexes 의 rows 열이 테이블이나 뷰의 현재 행 개수로 업데이트되도록 지정함. 단 indid 가 0 또는 1 인 sysindexes 행에만 작용 (커다란테이블과 인덱스된 뷰의 성능에만 영향을 줌)
   [ , NO_INFOMSGS ]  -- 모든 정보 메시지를 표시하지 않음
        ]



============================================================================
28. DBCC USEROPTIONS
 
- 현재 연결에 활성화된 SET 옵션을 반환함
============================================================================

 DBCC USEROPTIONS


============================================================================
29. DBCC CACHESTATS
 
- 현재 버퍼캐시안에 있는 오프젝트에 대한 정보를 보여줌
 - hit rates
 - compiled objects and plans

- 결과집합
 - Hit Ratio : Displays the percentage of time that this particular object was found in SQL Server's cache.
     The bigger this number, the better

 - Object Count  : Displays the total number of objects of the specified type that are cached.

 - Avg. Cost : A value used by SQL Server that measures how long it takes to compile a plan, along with the amount of memory needed by the plan. This value is used by SQL Server to determine if the plan should be cached or not.

 - Avg. Pages  : Measures the total number of 8K pages used, on average, for cached objects.

 - LW Object Count, LW Avg Cost, WL Avg Stay, LW Ave Use :
   All these columns indicate how many of the specified objects have been removed from the cache by the Lazy Writer.
   The lower the figure, the better.


============================================================================

 DBCC CACHESTATS



============================================================================
30. DBCC ERRORLOG

- 현재의 에러로그를 TRUNCATE
- sp_cycle_errorlog 도 같은 역할
============================================================================

 DBCC ERRORLOG


============================================================================
31. DBCC FLUSHPROCINDB

- 지정한 데이터베이스에 있는 스토어드 프로시저 캐시를 지운다. (전체가아님)
============================================================================
 
 DBCC FLUSHPROCINDB (데이터베이스이름)


============================================================================
32. DBCC MEMORYSTATUS

- 버퍼 캐시안에 있는 메모리 상태를 보여줌
-
 Buffer Distribution
 Buffer Counts
 Procedure Cache
 Dynamic Memory Manager
 Global Memory Objects
 Query Memory Objects
 Optimization Queue

============================================================================
 
 DBCC MEMORYSTATUS


============================================================================
33. DBCC PAGE

- SQL Server 안에 저장된 데이터 페이지의 컨텐츠를 볼수 있는 명령
- View the data page structure

============================================================================
 
 DBCC PAGE (
   {dbid|dbname}
  ,  pagenum   - 페이지넘버
  [, print option ]  - 페이지 헤더 정보를 출력하는 옵션
       0 : This option causes DBCC PAGE to print out only the page header information. (default)
       1 : page header information, each row of information from the page, and then page's offset table.
       2 : the same as option 1, except a single block of information (rather then separating the individual rows)

  [, cache ]  - 0 : 디스크로부터 페이지 번호를 반환
        1 : 캐시로 부터 페이지 번호를 반환 (default)

  [, logical ]  - 0 : virtual page number
        1 : logical page number
    )



============================================================================
34. DBCC SQLMGRSTATS

- ad-hoc , prepared Transact-SQL 구문이 어떻게 캐싱이 되는 지를 알수 있도록 함
- 결과집합
 Memory Used (8k Pages) - 메모리 페이지의 사용량
 Number CSql Objects - 캐시된 전체 수
 Number False Hits - Hit 실패수 (적을수록 좋다)
============================================================================
 
 DBCC FLUSHPROCINDB (데이터베이스이름)


============================================================================
35. DBCC BUFFER

- This Command can be used to display buffer headers and pages from the buffer cache.

- ex )
 DBCC TRACEON (3604)
 DBCC BUFFER(master, 'sysobjects')
============================================================================
 
 DBCC BUFFER ( [dbid | dbname]
   [, objid | objname ]
   [, nbufs]  -- number of buffers to examine
   [, printopt ]
    -- 0 : print out only the buffer header and page header (default)
    -- 1 : print out each row separately and the offset table
    -- 2 : print out each row as a whole and the offset table
      )



============================================================================
36. DBCC BYTES

- This command can be used to dump out bytes from a specific address.

- ex )
 DBCC TRACEON (3604)
 DBCC BYTES (10000000, 100)
============================================================================

 DBCC BYTES (startaddress, length)


============================================================================
37. DBCC DBINFO

- Displays DBINFO structure form the specified database.

- ex )
 DBCC TRACEON (3604)
 DBCC DBINFO(master)
============================================================================

 DBCC DBINFO (dbname)


============================================================================
38. DBCC DBTABLE

- This command displays the contents of then DBTABLE structure.
- This parameter keeps track of how many users are in the database.

- ex )
 DBCC TRACEON (3604)
 DBCC DBTABLE (master)
============================================================================

 DBCC DBTABLE ( [ dbid | dbname ] )


============================================================================
39. DBCC DES

- Prints the contents of the specified DES(descriptor).

- ex )
 DBCC TRACEON (3604)
 DBCC DES
============================================================================

 DBCC DES


============================================================================
40. DBCC IND

- Shows all pages in use by indexes of the specified table.

- ex )
 DBCC TRACEON (3604)
 DBCC IND (master, sysobjects, 0)
============================================================================

 DBCC IND ( [dbid | dbname] , [objid | objname], printopt )


============================================================================
41. DBCC LOG

- This command is used to view the transaction log for the specified database.

- ex )
 DBCC TRACEON (3604)
 DBCC LOG (master)
============================================================================

 DBCC LOG (
   [ dbid | dbname ]
   [, type ]  -- 0 : minimum infomation (operation, context, transaction id)
      -- 1 : more information ( plus flags, tags, row length, description )
      -- 2 : very detailed infomation (plus object name, index name, page id, slot id)
      -- 3 : full information about each operation
      -- 4 : full information about each operation plus hexadecimal dump of then current transaction log's row
      -- -1 : full information about each operaion plus hexadecimal dump of then current transaction log's row, plus Checkpoint Begin, DB version, Max XDESID
   )   


============================================================================
42. DBCC PROCBUF

- This command displays procedure buffer headers and stored procedure headers from the procedure cache.

- ex )
 DBCC TRACEON (3604)
 DBCC PROCBUF (master, 'sp_help', 1, 0)
============================================================================

 DBCC PROCBUF (
    [ dbid | dbname ]
   , [ objid | objname ]
   , nbufs
   , printopt -- 0 : only the proc buff and proc header
      -- 1 : proc buff, proc header, and contents of buffer.
       )


============================================================================
43. DBCC PRTIPAGE

- This command prints the page number pointed to by each row on the specified index page.

- ex )
 DBCC TRACEON (3604)

 DECLARE @dbid  int
 , @objectid int
 select @dbid = DB_ID('master')
 select @objectid = object_id('sysobjects')

 DBCC PRTIPAGE (@dbid, @objectid, 1, 0)
============================================================================

 DBCC PRTIPAGE ( dbid, objid, indexid, indexpage )


============================================================================
44. DBCC PSS

- This command shows info about processes currently connected to the server.

- ex )
 DBCC TRACEON (3604)
 DBCC PSS
============================================================================

 DBCC PSS (
   suid
  , spid
  , printopt -- 0 : standard output
     -- 1 : all open DES's and current sequence tree
   )


============================================================================
45. DBCC RESOURCE

- This command shows the server's level RESOURCE, PERFMON, and DS_CONFIG information.
 RESOURCE - shows addresses of various data structures used by the server.
 PERFMON  - structure contains master..spt_monitor field info.
 DS_CONFIG - structure contains master..syscurconfigs field information.

- ex )
 DBCC TRACEON (3604)
 DBCC RESOURCE
============================================================================

 DBCC RESOURCE


============================================================================
46. DBCC TAB

- view the data pages structure (in comparison with DBCC PAGE, this command will return information about all data pages for viewed table, not only for particular number)

- ex )
 DBCC TRACEON (3604)

 DECLARE @dbid  int
 , @objectid int
 select @dbid = DB_ID('master')
 select @objectid = OBJECT_ID('sysdatabases')

 DBCC TAB (@dbid, @objectid)
============================================================================

 DBCC TAB(dbid, objid)


출처 : http://blog.daum.net/turnnig-pointer/15744200