Use the DBCC PAGE command to view the meaning of each field in the page's context,page header
DBCC traceon (3604)DBCC page (DBID,TableID,indexid, PartitionNumber)
Page Header Example
PAGE header:page@0x000000024f382000M_pageid=(1:164) m_headerversion= 1M_type= 1m_typeflagbits= 0x0M_level= 0M_flagbits= 0x0M_objid (allocunitid.idobj)= theM_indexid (Allocunitid.idind)= theMetadata:allocunitid= 72057594043564032Metadata:partitionid= 72057594039173120Metadata:indexid= 1Metadata:objectid= 277576027M_prevpage=(1:163) M_nextpage=(1:165) Pminlen= 8008M_slotcnt= 1M_freecnt= theM_freedata= 8107M_reservedcnt= 0M_lsn=( the: -: -) m_xactreserved= 0M_xdesid=(0:0) m_ghostreccnt= 0m_tornbits= 0DB Frag ID= 1
1,m_pageid = (1:164)
The file ID and page ID where the page resides
2,m_type = 1
PageType |
Pagetype_desc |
1 |
Data Page |
2 |
Index Page |
3 |
Lob |
4 |
Lob |
8 |
GAM |
9 |
SGAM |
10 |
Iam |
11 |
Pfs |
13 |
Boot |
15 |
Fileheader |
16 |
Dcm |
17 |
Bcm |
3,m_level = 0
Page Level,m_level=0 in index that represents the leaf level.
For heap,m_level=0, the data Page is indicated;
For clustered index,m_level=0, the data Page is indicated;
For the leaf level node nonclustered index,m_level=0 represents.
4, for calculating Allocunitid
M_objid (Allocunitid.idobj) = 86
M_indexid (allocunitid.idind) = 256
For more information, please refer to: Inside the Storage engine:how is allocation unit IDs calculated?
5, Metadata
Metadata:allocunitid = 72057594043564032
Metadata:partitionid = 72057594039173120
METADATA:INDEXID = 1
Metadata:objectid = 277576027
6, page of chain pointer
M_prevpage = (1:163)--previous Page (Fileid:pageid)
M_nextpage = (1:165)--next Page (Fileid:pageid)
7, other
Pminlen = 8008-The number of bytes for fixed-length data is 8,008 bytes
m_slotcnt = 1--Number of rows of data in the page, 1 records per page
M_FREECNT = 83--Space remaining in the page, 83 bytes left
M_freedata = 8107--The position of the page free space is 8107Byte, a page 8KB equals 8192 bytes
m_reservedcnt = 0--The number of bytes freed by the active transaction
M_LSN = (34:33:14)--log Sequence No
m_xactreserved = 0-The latest number of bytes added to the m_reservedcnt field
M_xdesid = (0:0)--The most recent transaction ID added to M_RESERVEDCNT
m_ghostreccnt = 0--ghost Record count
M_tornbits = 0--this holds either the page checksum or the bits that were displaced by the Torn-page protection bits–
Depending on what form of page protection are turnde on for the database.
Reference Documentation:
Inside the Storage engine:how is allocation unit IDs calculated?
Inside the Storage engine:anatomy of a page
Note the DBCC IND () is explained in great detail with the DBCC page ([gposdb],1,119,3) explained in very detailed 2013-1-20
Page Header Info