频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

5.2.4 数据文件头部信息的奥秘

作者: 赵松涛 出处:电子工业出版社博文视点  2007-08-21 11:24    砖    好    评论   进入论坛
阅读提示:《SQL Server 2005奥秘》第5章主要研究SQL Server 2005数据文件数据的存储,本节主要介绍的是数据文件头部信息的奥秘。

5.2.4  数据文件头部信息的奥秘
接下来,我们来研究数据文件的头部信息蕴含的奥秘。
1.获得数据文件头部信息
下面利用DBCC PAGE命令来获得数据文件的头部信息。
(1)在【Management Studio】中执行下列命令来获得master数据库的主要数据文件的头部信息。因为头部信息蕴含在每个数据库数据文件的第1个(编号为0)的页面中。

DBCC TRACEON(3604)
GO
DBCC PAGE(master,1,0,3)
GO

光盘代码:\代码\0503.sql。
(2)执行结果如图5-10所示。

图5-10  获得数据文件的头部信息

(3)有关代码说明如下,以下带黑体的内容为作者的注释信息。
DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。

/*页面ID,为第1个文件的ID为0的页面*/
PAGE: (1:0)
/*内存缓冲区中的头部信息*/
BUFFER:
BUF @0x02D06620

bpage = 0x03490000
bhash = 0x00000000
bpageno = (1:0)
bdbid = 1
breferences = 0
bUse1 = 31003
bstat = 0x1c00109
blog = 0x32159
bnext = 0x00000000
/*页面头部信息*/
PAGE HEADER:

Page @0x03490000

m_pageId = (1:0)
m_headerVersion = 1
m_type = 15
m_typeFlagBits = 0x0   
m_level = 0
m_flagBits = 0x8
m_objId (AllocUnitId.idObj) = 99
m_indexId (AllocUnitId.idInd) = 0
Metadata: AllocUnitId = 6488064
Metadata: PartitionId = 0
Metadata: IndexId = 0
Metadata: ObjectId = 99
m_prevPage = (0:0)
m_nextPage = (0:0)
pminlen = 0
m_slotCnt = 1
m_freeCnt = 7937
m_freeData = 3059
m_reservedCnt = 0
m_lsn = (149:448:1)
m_xactReserved = 0
m_xdesId = (0:0)
m_ghostRecCnt = 0
m_tornBits = -1073741694
/*数据文件主要管理页面分配信息*/
Allocation Status
GAM (1:2) = ALLOCATED
SGAM (1:3) = NOT ALLOCATED
PFS (1:1) = 0x44 ALLOCATED 100_PCT_FULL
DIFF (1:6) = CHANGED
ML (1:7) = NOT MIN_LOGGED           
/*数据文件头部信息*/
File Header Data:

Record Type = PRIMARY_RECORD
Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
Memory Dump @0x24BCCB56

00000000:   30000800 00000000 17000000 0016004b †..............K        
00000010:   004b004d 004f0053 0057005b 005f005f †K.M.O.S.W.[._._        
00000020:   00690069 0069006d 00710075 00790079 †i.i.i.m.q.u.y.y        
00000030:   00790079 0083008d 009d004c 3f4c23ac †y.y.......L?L#.        
00000040:   53f24583 29615c2f 5ddaba01 00010000 †.E.)a\/].......        
00000050:   020000ff ffffff0a 00000000 0000007b †..............{        
00000060:   000000d8 0000000a 00000200 00000010 †...............        
00000070:   00ffffff ff001000 00000000 00000000 †...............        
00000080:   00000000 00000000 00000000 00000000 †...............        
00000090:   00000000 00000000 00000000 00† ?† ?† ?† ?.............           
/*数据文件头部存储的数据转换后的值*/
BindingID = 234c3f4c-53ac-45f2-8329-615c2f5ddaba
FileGroupId = 1
FileIdProp = 1
Size = 512
MaxSize = 65535
Growth = 10
Perf = 0
BackupLsn = [NULL]
MaxLsn = [NULL]
FirstLsn = [NULL]
OldestRestoredLsn = [NULL]
FirstUpdateLsn = (123:216:10)
FirstNonloggedUpdateLsn = [NULL]
CreateLsn = (0:0:0)
DifferentialBaseLsn = (0:0:0)
DifferentialBaseGuid = 00000000-0000-0000-0000-000000000000
MinSize = 512
Status = 0
UserShrinkSize = 65535


DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。
2.分析数据文件头部信息
接下来用表5-2来分析数据文件头部数据的含义。
表5-2  数据文件的头部信息

字段名称

   

BindingID

给数据文件产生的全局唯一标识符

FileGroupId

文件组的ID

FileIdProp

在数据库中的文件ID

Size

当前空间大小,以页面为单位

MaxSize

最大空间大小,65 535表示无限大小

Growth

增长值

Perf

保留

BackupLsn

数据页面的上一产生日志记录的备份时的LSN

MaxLsn

最大的日志序列号

FirstLsn

首次日志序列号

FirstCreateIndexLsn

首次创建索引时的日志序列号

FirstUpdateLsn

首次更新时的日志序列号

FirstNonloggedUpdateLsn

首次非日志记录时的日志序列号

CreateLsn

创建时的日志序列号

DifferentialBaseLsn

发生差异更改时的日志序列号

DifferentialBaseGuid

发生差异更改时的全局唯一标识符

字段名称

   

MinSize

最小的大小

Status

文件状态

UserShrinkSize

用户收缩文件的大小

【责任编辑:雪花 TEL:(010)68476606-8007】

回书目   上一节   下一节
专题
Sun以10亿美元并购开源数据库厂商MySQL
Windows Home Server 家用服务器专题
服务器维护与应用基础
服务器基础知识入门
赛门铁克诺顿误杀Windows系统文件 导致百万系统崩溃
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
浏览器的战国时代
浏览器的战国时代
ARP攻击防范与解决方案
ARP攻击防范与解决方案
NAC安全访问控制
NAC安全访问控制
· NAC安全访问控制
· 网络布线测试仪器
· Windows Server 2008专..
· Windows远程桌面应用
· 网络故障排除宝典
· 运营商封堵ADSL共享 中..
· 解析35岁技术人的价值..
· 世纪枭雄比尔盖茨的王..
· 主流品牌防火墙配置
· ASP.NET开发教程
· 超级计算机TOP500专题
· Vista SP1对决XP SP3
· SQL Server 2008/2005..
· 程序员如何成长?
· C#技术开发指南
· 虚拟化技术还有点“虚”
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SOA 面向服务架构
SOA 面向服务架构
· SOA 面向服务架构
· SQL Server 2008/2005..
· Apache技术专题
· 三层交换技术专题
· SQL Server入门到精通
· Windows远程桌面应用
· C#技术开发指南
· Apache技术专题
· Windows集群服务应用
· C#技术开发指南
· 国际文档格式标准开战
· 路由器设置与口令恢复
· Linux 集群技术专题
· PHP开发应用手册
· SOA 面向服务架构
· 企业数据恢复指南
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SQL Server入门到精通
SQL Server入门到精通
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· Apache技术专题
· C#技术开发指南
· 三层交换技术专题
· Apache技术专题
· C#技术开发指南
· Windows远程桌面应用
· 企业数据恢复指南
· Windows集群服务应用
· 路由器设置与口令恢复
· Linux 集群技术专题
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· 反垃圾邮件技术应用