DBCC SHOWCONTIG是显示指定的表的数据和索引的碎片信息。

Usage:

dbcc SHOWCONTIG

[ (

{ 'table_name' | table_id | 'view_name' | view_id }

[ , { 'index_name' | index_id } ]

) ]

[ WITH

{

[ ALL_INDEXES

| FAST [ , ALL_INDEXES ]

| TABLERESULTS [ , { ALL_INDEXES } ] ]

[ , { FAST | ALL_LEVELS } ]

[ , NO_INFOMSGS ]

}

]

Result:

DBCC SHOWCONTIG 正在扫描 'TB22' 表...

表: 'TB22' (1877581727);索引 ID: 1,数据库 ID: 7

已执行 TABLE 级别的扫描。

- 扫描页数................................: 848

- 扫描区数..............................: 115

- 区切换次数..............................: 812

- 每个区的平均页数........................: 7.4

- 扫描密度 [最佳计数:实际计数].......: 13.04% [106:813]

- 逻辑扫描碎片 ..................: 95.52%

- 区扫描碎片 ..................: 6.96%

- 每页的平均可用字节数.....................: 2718.2

- 平均页密度(满).....................: 66.42%

索引重建后的结果:

DBCC SHOWCONTIG 正在扫描 'TB22' 表...

表: 'TB22' (1877581727);索引 ID: 1,数据库 ID: 7

已执行 TABLE 级别的扫描。

- 扫描页数................................: 564

- 扫描区数..............................: 71

- 区切换次数..............................: 70

- 每个区的平均页数........................: 7.9

- 扫描密度 [最佳计数:实际计数].......: 100.00% [71:71]

- 逻辑扫描碎片 ..................: 0.00%

- 区扫描碎片 ..................: 1.41%

- 每页的平均可用字节数.....................: 143.2

- 平均页密度(满).....................: 98.23%

解释如下:

Page Scanned-扫描页数:如果你知道行的近似尺寸和表或索引里的行数,那么你可以估计出索引里的页数。看看扫描页数,如果明显比你估计的页数要高,说明存在内部碎片。

Extents Scanned-扫描扩展盘区数:用扫描页数除以8,四舍五入到下一个最高值。该值应该和DBCC SHOWCONTIG返回的扫描扩展盘区数一致。如果DBCC SHOWCONTIG返回的数高,说明存在外部碎片。碎片的严重程度依赖于刚才显示的值比估计值高多少。

Extent Switches-扩展盘区开关数:该数应该等于扫描扩展盘区数减1。高了则说明有外部碎片。

Avg. Pages per Extent-每个扩展盘区上的平均页数:该数是扫描页数除以扫描扩展盘区数,一般是8。小于8说明有外部碎片。

Scan Density [Best Count:Actual Count]-扫描密度[最佳值:实际值]:DBCC SHOWCONTIG返回最有用的一个百分比。这是扩展盘区的最佳值和实际值的比率。该百分比应该尽可能靠近100%。低了则说明有外部碎片。

Logical Scan Fragmentation-逻辑扫描碎片:无序页的百分比。该百分比应该在0%到10%之间,高了则说明有外部碎片。

Extent Scan Fragmentation-扩展盘区扫描碎片:无序扩展盘区在扫描索引叶级页中所占的百分比。该百分比应该是0%,高了则说明有外部碎片。

Avg. Bytes Free per Page-每页上的平均可用字节数:所扫描的页上的平均可用字节数。越高说明有内部碎片,不过在你用这个数字决定是否有内部碎片之前,应该考虑fill factor(填充因子)。

Avg. Page Density (full)-平均页密度(完整):每页上的平均可用字节数的百分比的相反数。低的百分比说明有内部碎片。

还可以使用以下语句来查看表的物理信息,但该操作会锁表,谨慎使用

SELECT * FROM sys.dm_db_index_physical_stats

(DB_ID(N'DB1'), OBJECT_ID(N'dbo.TB22'), NULL, NULL , 'DETAILED');

DBCC--SHOWCONTIG的更多相关文章

  1. DBCC SHOWCONTIG、DBCC DBREINDEX。

    use dbname declare @table_id int set @table_id=object_id('tablename') dbcc showcontig(@table_id) 解释如 ...

  2. sql server 碎片整理——DBCC SHOWCONTIG

    转自: 1.http://blog.sina.com.cn/s/blog_6d2675450101ks6i.html 2.http://www.cnblogs.com/CareySon/archive ...

  3. Sql Server系列:DBCC命令

    DBCC(Database Base Consistency Checker,数据库一致性检查程序)命令用于验证数据库完整性.查找错误和分析系统使用情况等. 1. DBCC CHECKALLOC 检查 ...

  4. DBCC常用命令小汇

    DBCC是SQL Server提供的一组控制台命令,功能很强大,掌握一些必要的语句,对操作数据库有不少帮助,所以决定整理一下,发现已有不少类似的整理,减少了不少工作,归类如下: 一.DBCC 帮助类命 ...

  5. SQLServer 维护脚本分享(11)部分DBCC及系统存储过程

    --DBCC命令与用法 DBCC HELP('?') DBCC HELP('useroptions') DBCC USEROPTIONS WITH NO_INFOMSGS --当前DB的区及文件 DB ...

  6. DBCC DBREINDEX重建索引提高SQL Server性能

    大多数SQL Server表需要索引来提高数据的访问速度,如果没有索引,SQL Server 要进行表格扫描读取表中的每一个记录才能找到索要的数据.索引可以分为簇索引和非簇索引,簇索引通过重排表中的数 ...

  7. SQL Server dbcc shrinkfile 不起作用

    方法 1.重建聚集索引. 方法 2.重建堆表. ---------------------------------------------------------------------------- ...

  8. DBCC用法汇总

    本文摘自http://www.cnblogs.com/lilycnblogs/archive/2011/03/31/2001372.html 留作查阅 DBCC是SQL Server提供的一组控制台命 ...

  9. [转]DBCC (Transact-SQL)

    http://msdn.microsoft.com/zh-cn/library/ms188796.aspx Transact-SQL 编程语言提供 DBCC 语句以作为 SQL Server 的数据库 ...

  10. DBCC命令

    DBCC SQLMGRSTATS 用于产生3个不同的值,这些值用在你想查看高速缓存在ad-hoc和预编译的TSQL语句中是如何工作的 Memory Used(8K Pages):若内存页的数量非常大, ...

随机推荐

  1. mysql服务器设置其他电脑访问

    解决pc.b想访问pc.a上的mysql而访问不了的问题. 第一步:先在navicat的tools里面选择console 第二步:输入下面的信息: '; 其中wp是登陆数据库的用户名,IP地址是允许访 ...

  2. 用Python写单向链表和双向链表

    链表是一种数据结构,链表在循环遍历的时候效率不高,但是在插入和删除时优势比较大. 链表由一个个节点组成. 单向链表的节点分为两个部分:存储的对象和对下一个节点的引用.注意是指向下一个节点. 而双向链表 ...

  3. 如何禁止浏览器自动填充非登陆input的账号和密码?

    发现浏览器填充密码的方式,那就是,找到页面上第一个type为password的input填充.发现了这个规律后,很自然的就想到了,是不是可以在真正的password前面加一个隐藏的password,形 ...

  4. 控制span的width属性及display属性值的选择

    给span设置width样式,会发现并没有改变它的宽度,但有时候我们需要给它设置固定的宽度,那么就可以设置它的display样式,改变span的显示模式就好了. span默认显示模式是inline,无 ...

  5. 14- Servlet.service() for servlet [mvc-dispatcher] in context with path [/collegeservice] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root caus

    有的service没有依赖注入:

  6. 源代码安装grub-customizer

    wget https://launchpad.net/grub-customizer/5.0/5.0.6/+download/grub-customizer_5.0.6.tar.gztar zxvf ...

  7. jq给动态生成的标签绑定事件的几种方法

    经常遇到给动态生成的标签绑定事件不好用,自己简单测试总结了下,结论如下了: body> <!-- 下面是用纯动态方式生成标签 --> <div id="d2" ...

  8. PAT 1047 编程团体赛(代码)

    1047 编程团体赛(20)(20 分) 编程团体赛的规则为:每个参赛队由若干队员组成:所有队员独立比赛:参赛队的成绩为所有队员的成绩和:成绩最高的队获胜. 现给定所有队员的比赛成绩,请你编写程序找出 ...

  9. livecd-creator: UnicodeEncodeError: 'ascii' codec can't encode characters in position 1282-1

    通过livecd-creator进行构建ISO过程中出现题目中错误, livecd-creator命令属于包livecd-tools 问题原因: 编码错误,初步判断应该与编码相关的环境变量设置有关 解 ...

  10. 04 Maven 仓库

    Maven 仓库 在 Maven 坐标与依赖 中详细介绍了 Maven 坐标和依赖,坐标和依赖是任何一个构件在 Maven 世界中的逻辑表示方式:而构件的物理表示方式是文件, Maven 通过仓库来统 ...