解剖SQLSERVER 完结篇 关于Internals Viewer源代码
解剖SQLSERVER 完结篇 关于Internals Viewer源代码
大家可能都用过Internals Viewer这个软件
《查看SQLSERVER内部数据页面的小插件Internals Viewer》
但是不知道有多少人看过他的源代码呢?
作者把源代码放在在CodePlex网站上面,但是这个源代码只支持SQL2008及以下,不支持SQL2008R2
后来有人根据原作者的代码改写出了 SQL2008R2版本,叫做《Internals Viewer (updated) for SQL Server 2008 R2.》
我把第一版和第二版源代码都下载下来了
代码下载
第一版: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上面的评论,以发现软件的漏洞和错误
还有各版本的变化
在解决方案里面,SSMS插件项目和UI项目可以直接忽略,如果你只想研究核心代码的话
关于事务日志,在项目里只有三个类:LogData类、LogMonitor类、LogSequenceNumber类
大家可以结合技术内幕的书籍研究一下
数据压缩相关的类,由于注释较少,可能比较难理解
稀疏列
前转记录
非聚集索引RID地址
Internals Viewer第二版源代码 这里姑且叫他第二版
在第二版里面由于知名度不及第一版,自然基本上没有多少人知道,也就没有什么评论和bug反馈
第二版的结构和文件基本跟第一版一样,只是有些地方不同
这里不再做介绍了,大家可以用对比工具对比一下
这系列已经写完了,但是任务还没有结束,SQLSERVER是一个非常庞大的软件,基本上精通SQLSERVER非常难
希望看官喜欢这系列文章o(∩_∩)o
解剖SQLSERVER 完结篇 关于Internals Viewer源代码的更多相关文章
- 解剖SQLSERVER 第一篇 数据库恢复软件商的黑幕(有删减版)
解剖SQLSERVER 第一篇 数据库恢复软件商的黑幕(有删减版) 这一系列,我们一起来解剖SQLSERVER 在系列的第一篇文章里本人可能会得罪某些人,但是作为一位SQLSERVER MVP,在我 ...
- 解剖SQLSERVER 第九篇 OrcaMDF现在能通过系统DMVs显示元数据(译)
解剖SQLSERVER 第九篇 OrcaMDF现在能通过系统DMVs显示元数据(译) http://improve.dk/orcamdf-now-exposes-metadata-through-s ...
- 解剖SQLSERVER 第二篇 对数据页面头进行逆向(译)
解剖SQLSERVER 第二篇 对数据页面头进行逆向(译) http://improve.dk/reverse-engineering-sql-server-page-headers/ 在开发Orc ...
- 解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译)
解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译) http://improve.dk/orcamdf-rawdatabase-a-swiss-a ...
- 解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译)
解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译) http://improve.dk/where-does-sql-server-store-the-sourc ...
- 解剖SQLSERVER 第七篇 OrcaMDF 特性概述(译)
解剖SQLSERVER 第七篇 OrcaMDF 特性概述(译) http://improve.dk/orcamdf-feature-recap/ 时间过得真快,这已经过了大概四个月了自从我最初介绍我 ...
- 解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译)
解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译) http://improve.dk/orcamdf-studio-release-feature-recap/ ...
- 解剖SQLSERVER 第六篇 对OrcaMDF的系统测试里避免regressions(译)
解剖SQLSERVER 第六篇 对OrcaMDF的系统测试里避免regressions (译) http://improve.dk/avoiding-regressions-in-orcamdf-b ...
- 解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译)
解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译) http://improve.dk/corrupting-databases-purpose-usin ...
随机推荐
- $.each与$().each
在jquery中,遍历对象和数组,经常会用到$().each和$.each(),两个方法.两个方法是有区别的,从而这两个方法在针对不同的操作上,显示了各自的特点. $().each,对于这个方法,在d ...
- SQLServer idenity 字段跳值
修改数据库实例的启动参数 然后修改SQLServer启动参数,打开SQLServer configuration manager,然后选择服务实例,点击右键属性,查看实例的属性界面,然后启动参数选项输 ...
- json 数据 添加 删除 排序
js数据格式和json数据格式,各有各的用处,就个人而言,json更好用一点,js自身的数组和对像限制比较多. 以js的数组举例: var a = ['1']; a[5] = 52; a.length ...
- C语言实现 二分查找数组中的Key值(递归和非递归)
基本问题:使用二分查找的方式,对数组内的值进行匹配,如果成功,返回其下标,否则返回 -1.请使用递归和非递归两种方法说明. 非递归代码如下: #include <stdio.h> int ...
- 远程debug hadoop
- 6. Adapter Class/Object(适配器)
意图: 将一个类的接口转换成客户希望的另外一个接口.Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 适用性: 你想使用一个已经存在的类,而它的接口不符合你的需求. 你想 ...
- Linux服务器上安装织梦CMS
安装篇 第一步:配置防火墙(默认情况下,端口80和3306是拒绝访问的,在防火墙上进行配置): vi /etc/sysconfig/iptables(在"COMMIT"的上一行加上 ...
- maven使用
Maven是一个项目管理和构建自动化工具.但是对于我们程序员来说,我们最关心的是它的项目构建功能,它定义了项目开发的几个标准步骤:编译,发布,单元测试及部署以帮助项目开发 最简单的时候场景是,在pom ...
- MYSQL使用mysqldump导出某个表的部分数据
命令格式如下: mysqldump -u用户名 -p密码 数据库名 表名 --where="筛选条件" > 导出文件路径 例子: 从meteo数据库的sdata表中导出sen ...
- Android自定义View之CircleView
Android自定义View之CircleView 版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请表明出处:http://www.cnblogs.com/cavalier-/p/5999 ...