解剖SQLSERVER 完结篇 关于Internals Viewer源代码

原文: 解剖SQLSERVER 完结篇 关于Internals Viewer源代码

解剖SQLSERVER 完结篇 关于Internals Viewer源代码

大家可能都用过Internals Viewer这个软件

查看SQLSERVER内部数据页面的小插件Internals Viewer

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第1张图片

但是不知道有多少人看过他的源代码呢?

作者把源代码放在在CodePlex网站上面,但是这个源代码只支持SQL2008及以下,不支持SQL2008R2

后来有人根据原作者的代码改写出了 SQL2008R2版本,叫做《Internals Viewer (updated) for SQL Server 2008 R2.

 

我把第一版和第二版源代码都下载下来了

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第2张图片

代码下载

第一版:http://files.cnblogs.com/lyhabc/internalsviewer1.rar

第二版:http://files.cnblogs.com/lyhabc/intview2.rar

项目地址

第一版:http://internalsviewer.codeplex.com/

第二版:https://intview2.codeplex.com/


Internals Viewer第一版源代码

在看源代码之前,我觉得大家应该要看一下CodePlex上面的评论,以发现软件的漏洞和错误

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第3张图片

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第4张图片

还有各版本的变化

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第5张图片

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第6张图片

在解决方案里面,SSMS插件项目和UI项目可以直接忽略,如果你只想研究核心代码的话

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第7张图片

 解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第8张图片

关于事务日志,在项目里只有三个类:LogData类、LogMonitor类、LogSequenceNumber类

大家可以结合技术内幕的书籍研究一下

 

数据压缩相关的类,由于注释较少,可能比较难理解

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第9张图片

 

 解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第10张图片

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第11张图片

稀疏列

 解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第12张图片

前转记录

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第13张图片

非聚集索引RID地址

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第14张图片


Internals Viewer第二版源代码  这里姑且叫他第二版

在第二版里面由于知名度不及第一版,自然基本上没有多少人知道,也就没有什么评论和bug反馈

第二版的结构和文件基本跟第一版一样,只是有些地方不同

解剖SQLSERVER 完结篇 关于Internals Viewer源代码_第15张图片

 

 

这里不再做介绍了,大家可以用对比工具对比一下

 

这系列已经写完了,但是任务还没有结束,SQLSERVER是一个非常庞大的软件,基本上精通SQLSERVER非常难

希望看官喜欢这系列文章o(∩_∩)o 

你可能感兴趣的:(sqlserver)