日期:2014-05-17  浏览次数:20530 次

SQL Server 2005 用DBCC LOG命令调出日志信息,信息中PAGEID是几进制的?
Page ID:0001:00000121,换算成十进制是多少?
sql?server?2005

------解决方案--------------------
后面的16进制数121,转化为10进制数是289吧
------解决方案--------------------
而前面的0001应该文件id,也就是fileID是1
------解决方案--------------------
引用:
Quote: 引用:

而前面的0001应该文件id,也就是fileID是1

dbcc page (test,1,119,3)中的1是不是就是filedID,3又是什么意思
你要看详细信息就用3,一般可以显示出能读的数据,如果2的话,好像是没有经过解释的
------解决方案--------------------
1、buffer部分:

bpageno 就是页号,dbid就是数据库id

2、PAGE HEADER:
m_prevPage = (0:0)    如果页面处于页链中,表示上一个页面               
m_nextPage = (0:0)    表示下一个页面
m_slotCnt = 6         表示已分配的记录数,就是有6条记录

3、Allocation Status

GAM (1:2) = ALLOCATED        全局分配映射  
SGAM (1:3) = ALLOCATED       共享全局分配映射       
PFS (1:1) = 0x61 MIXED_EXT ALLOCATED  50_PCT_FULL  页空闲空间                         
DIFF (1:6) = CHANGED         用于差异备份
ML (1:7) = NOT MIN_LOGGED    用于最小化日志,大容量日志

4、
Slot 0 Column 0 Offset 0x4 Length 4
就是第0行记录,第0列
------解决方案--------------------
呵呵,要解析这些,我建议你参考一下这个本书吧,挺详细的:

Microsoft SQL Server 2005技术内幕:存储引擎

你搜搜网上应该有电子版的哈