查看SQLSERVER内部数据页面的小插件Internals Viewer
感觉internals viewer这个名字起得很好,内部查看。
文章地址:
SQL Server2008存储结构之堆表、行溢出
http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html
这几天研究了一下这个小工具,发现挺好用的,对入想深入研究或者刚刚学SQLSERVER但是想对SQL有更深入了解的朋友们特别有用
http://internalsviewer.codeplex.com/
我也上传到了自己的网盘,大家也可以到我的网盘下载:http://www.kuaipan.cn/file/id_4401224786924003.htm
InternalsViewerInstaller.msi 安装就不说了,直接双击安装,安装前最好先关闭SSMS
官方上说:可以用在SQL2005 SQL2008 ,我自己的电脑是SQL2005 Windows7可以使用
下载安装好之后,再打开SSMS,会看到SSMS的菜单增加了一个
点击Internals Viewer会有两个菜单:display transaction log 和Allocation Map
不知道为什么display transaction log用不了,本人非常想知道display transaction log是什么功能
只好点击“Allocation Map” ,点击之后会弹出 连接对话框,大家选择验证方式连接就可以了不多说了
key:是否显示数据库的表,如果不点击key下面不会显示表的
点击某个小方格就会显示那个小方格的信息,每个小方格代表一个页面
小方格的颜色是跟下面表格的颜色是一一对应的,表示这些表格数据在数据库中的分布情况
数据库第9页:sys.sysqnames 存在于每个数据库中。
4 字节 ID 标记的每个命名空间或限定名均存在对应的一行。
像dbcc checkprimaryfile命令的信息应该就存储于这个页面中
数据库第10页:boot page 数据库根据这个页面的信息来启动的
每个小方格代表一个页面,左边这些信息估计是使用了这两条语句:DBCC IND() DBCC PAGE()
文章地址: SQL Server2008存储结构之堆表、行溢出
http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html
堆表只依靠表里的IAM页(索引分配映射页)将堆的页面联系在一起,IAM里记录了页面编号,页面位置
红色的小方格就是记录了sys.syscolpars这张表他的数据页面在数据库中的分布情况
我点击了一下IAM页面下方的小方格就报错了,然后弹出一个对话框,原来这个软件使用.NET来编写的
http://www.th7.cn/db/mssql/201301/28469.shtml