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

查看 SQLSERVER 内部 数据 页面 的小插件Internals Viewer 感觉internals viewer这个名字起得很好, 内部 查看 。 文章地址: SQL Server2008存储结构之堆表、行溢出 http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html 这几天研究了一下这个小

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

感觉internals viewer这个名字起得很好,内部查看

文章地址:
SQL Server2008存储结构之堆表、行溢出

http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html

这几天研究了一下这个小工具,发现挺好用的,对入想深入研究或者刚刚学SQLSERVER但是想对SQL有更深入了解的朋友们特别有用


先给出下载地址,这个是codeplex上的一个项目:

http://internalsviewer.codeplex.com/

我也上传到了自己的网盘,大家也可以到我的网盘下载:http://www.kuaipan.cn/file/id_4401224786924003.htm

 InternalsViewerInstaller.msi 安装就不说了,直接双击安装,安装前最好先关闭SSMS

官方上说:可以用在SQL2005 SQL2008  ,我自己的电脑是SQL2005 Windows7可以使用

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

 

 

下载安装好之后,再打开SSMS,会看到SSMS的菜单增加了一个

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

 

 点击Internals Viewer会有两个菜单:display transaction logAllocation Map

不知道为什么display transaction log用不了,本人非常想知道display transaction log是什么功能

只好点击“Allocation Map” ,点击之后会弹出 连接对话框,大家选择验证方式连接就可以了不多说了


打开之后会看到如下图

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

 上面几个按钮

选择要查看数据

PFS:查看数据库的空闲页面情况

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

buffer pool:看下图

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

small:调整小方格的大小

key:是否显示数据库的表,如果不点击key下面不会显示表的

File Details:看上面那个图


小方格颜色的含义

点击某个小方格就会显示那个小方格的信息,每个小方格代表一个页面

小方格的颜色是跟下面表格的颜色是一一对应的,表示这些表格数据数据库中的分布情况

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

 

鼠标在小方格上移动会看到这个小方格属于哪个表

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

 鼠标左键单击某个小方格会显示这个页面的信息

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

如果你想看某个表的数据,你可以点击那个表,然后就会显示出那个表的数据分布情况,你点击某个小方格就可以看到那个表的数据了~

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


先从数据库的开头几个页面说起吧

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

 

数据库第1页:file header page

数据库第2页:PFS  (Page Free Space) ,也叫页面自由空间,该页面用来跟踪一个文件中每一个特定页面的利用率情况

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

数据库第3页:GAM 全局分配映射(Global Allocation Map,GAM)页面  这些页面记录了哪些区已经被分配并用作何种用途

数据库第4页:SGAM 共享全局分配映射(Shared Global Allocation Map,SGAM)页面  这些页面记录了哪些区当前被用作混合类型的区,并且这些区需含有至少一个未使用的页面

第5页没有数据

第6页没有数据

数据库第7页:DCM 差异变更(Differential Changed Map,DCM)页面 他跟踪一个文件中的哪一个区在最新一次完整数据库备份之后被修改过。SQLSERVER
用在增量备份时只对已发生数据变更的分区进行增量备份即可

资料:SQL Server 2008 存储结构之DCM、BCM

数据库第8页:BCM 批量更改映射(Bulk Changed Map)页面,该页面当文件中的一个区在最小量或批量日志操作中被
使用时用到。

数据库第9页:sys.sysqnames 存在于每个数据库中。

4 字节 ID 标记的每个命名空间或限定名均存在对应的一行。

像dbcc checkprimaryfile命令的信息应该就存储于这个页面

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

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

数据库第10页:boot page 数据库根据这个页面的信息来启动的

 


IAM页面

下面那里写错了,应该是堆表才有

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

 


具体页面信息

 每个小方格代表一个页面,左边这些信息估计是使用了这两条语句:DBCC IND()   DBCC PAGE()

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

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

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

 下方显示对应的表数据

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

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

 

左上角显示了这个页面数据页还是IAM页

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

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


数据行的结构

关于数据行的结构,大家可以看文章最开始给出的

文章地址: SQL Server2008存储结构之堆表、行溢出

http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html

我摘抄一部分

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

其中状态A为如下说明:
 
  bit0:版本信息,在SQL Server 2005/08总是为0
 
  bit1-3: 0=(primary record);1=(forwarded record);2=(forwarding stud);3=(index record);4=(溢出数据);5=(ghost索引记录);6=(ghost数据记录)
 
  bit4:表示存在NULL位图(在数据行里SQL2005/08总存在NULL位图)
 
  bit5:表示存在变长列
 
  bit6:未启用
 
  bit7:表示存在幽灵记录
 
  本例中30->00110000 它是一个行属性的位图 从高位存到低位(右边第一位是bit0),bit4为1即存在变长列的字段,因为在SQLServer2005/2008中总存在NULL位图,所以bit5也为1。
 
  状态位B在SQLServer2005//2008中未启用,所以为00


IAM页和数据页的差别

堆表只依靠表里的IAM页(索引分配映射页)将堆的页面联系在一起,IAM里记录了页面编号,页面位置

红色的小方格就是记录了sys.syscolpars这张表他的数据页面数据库中的分布情况

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


关于这个软件

我点击了一下IAM页面下方的小方格就报错了,然后弹出一个对话框,原来这个软件使用.NET来编写的

我们国人什么时候也能够写一个呢?

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

 

----------------------------------------------------------------------------------------------------

最后附上各个系统页面的作用和详细介绍地址

PFS页面介绍:  http://dev.21tx.com/2011/11/24/11378.html
DCM BCM页面介绍:  http://tech.it168.com/a2010/0921/1106/000001106857.shtml
GAM SGAM页面介绍:http://www.efficient-it.com.cn/space/78/viewspace/itemid/6756.html

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
windows10怎么查看硬盘序列号windows10怎么查看硬盘序列号Jul 17, 2023 pm 02:21 PM

硬盘序列号相当于是硬盘的身份标识,拥有唯一性的特质,那么在windows10系统中怎么查看硬盘序列号呢?第一种方法是开启电脑机箱,找到硬盘里的纸贴,就能见到一串代码了。嫌这个方法麻烦的用户也可以打开命令提示符窗口,随后运作wmicdiskdrivegetmodel,name,serialnumber这串命令,以后就能见到硬盘序列号了。windows10查询硬盘序列号方法介绍:方法一:查验贴纸标签开启PC机箱,在物理硬盘驱动器上搜索纸贴或标识。序列号列在"序列号"、"

如何快速查看numpy版本如何快速查看numpy版本Jan 19, 2024 am 08:23 AM

Numpy是Python中一个重要的数学库,它提供了高效的数组操作和科学计算函数,被广泛应用于数据分析、机器学习、深度学习等领域。在使用numpy过程中,我们经常需要查看numpy的版本号,以便确定当前环境所支持的功能。本文将介绍如何快速查看numpy版本,并提供具体的代码示例。方法一:使用numpy自带的__version__属性numpy模块自带一个__

学习如何查看Win11的产品密钥学习如何查看Win11的产品密钥Dec 24, 2023 pm 01:35 PM

有些朋友不知道win11密钥怎么查看,其实如果你激活了win11,可以直接在系统中查看到win11密钥,如果你还没有激活,那么在购买的win11盒子或邮件里也可以查看到。win11密钥怎么查看:一、已激活1、如果已经激活,那么只要右键开始菜单,打开“运行”2、在其中输入“regedit”回车打开注册表。3、接着进入“计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\SoftwareProtectionPlatfo

查看麒麟操作系统版本和内核版本查看麒麟操作系统版本和内核版本Feb 21, 2024 pm 07:04 PM

查看麒麟操作系统版本和内核版本在麒麟操作系统中,了解如何查看系统版本和内核版本是进行系统管理和维护的基础。查看麒麟操作系统版本方法一:使用/etc/.kyinfo文件要查看麒麟操作系统的版本,您可以查看/etc/.kyinfo文件。此文件包含了操作系统的版本信息。执行以下命令:cat/etc/.kyinfo此命令将显示操作系统的详细版本信息。方法二:使用/etc/issue文件另一个查看操作系统版本的方法是通过查看/etc/issue文件。这个文件同样提供了版本信息,但可能不如.kyinfo文件

如何在Windows 10上查看电脑主板型号如何在Windows 10上查看电脑主板型号Jan 08, 2024 pm 07:59 PM

很多小伙伴买了win10系统的新电脑,却不知道电脑的主板型号如何查看。了解电脑的主板型号有助于我们更好的理解电脑,装配更合适电脑的软件。其实我们不必拆开电脑,只要适用鲁大师或者在系统设置里就可以查看了,具体的步骤一起来看看吧。win10查看电脑主板型号的方法第一种方法1、右击此电脑,点击管理2、选择设备管理器。3、右侧找到系统设备。4、就可以查看主板型号了。第二种方法1、使用鲁大师等电脑检测类软件2、可以看见自己电脑的主板型号了。第三种方法1、这个方法是最老土的啦,直接拆开自己的电脑来查看电脑主

如何查看支付宝余额宝的收益?如何查看支付宝余额宝的收益?Dec 27, 2023 pm 07:35 PM

相信很多朋友都知道支付宝和余额宝是阿里巴巴旗下的两个不错的产品,但只有余额宝能够获得预期收益。那么如何在支付宝中查看余额宝的收益呢?我相信很多朋友都想知道。接下来,我将带大家了解一下在支付宝中如何查看余额宝的收益。有兴趣的朋友们,请跟着我一起来看看吧如何查看余额宝收益的方法在支付宝中.首先,打开支付宝并登录后,在主页面下方找到"余额宝"并点击进入。接下来,在余额宝的资金明细界面上,就可以查看个人支付宝的余额宝收益了如何取消支付宝的自动续费?打开支付宝后,进入主界面,点击右下角的"我的",进入我的

如何查找默认网关如何查找默认网关Feb 19, 2024 pm 02:39 PM

默认网关在哪里看默认网关(DefaultGateway)是一个网络术语,用于指代计算机或其他网络设备连接到的主要网络的出口点。它扮演着将网络请求转发到其他网络的角色。默认网关通常由网络管理员或Internet服务提供商(ISP)进行配置,并且对于计算机来说非常重要。当我们需要链接到互联网时,我们需要知道默认网关的IP地址。那么,默认网关的IP地址在哪里查找

如何使用 Linux 查看过去注册用户的记录?如何使用 Linux 查看过去注册用户的记录?Feb 22, 2024 am 08:42 AM

在Linux系统中,用户的登录记录和活动记录通常都会被记录在系统日志文件中。可以通过查看这些日志文件来了解过去注册用户的记录。下面将介绍如何使用Linux命令查看过去注册用户的记录。查看登录记录:登录记录通常会记录在系统的认证日志文件中,常见的认证日志文件包括/var/log/auth.log、/var/log/secure等,不同的Linux发行版可能会有

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment