SQL Server数据库管理员必备的DBCC命令(一)

日期: 2008-08-21 作者:Alizze 来源:TechTarget中国 英文

一、了解DBCC


DBCC(database consistenecy checker,简称dbcc) 是一个实用命令集,用来检查数据库的逻辑一致性及物理一致性。


数据库控制台命令语句可分为以下类别:


维护: 对数据库、索引或文件组进行维护的任务。


杂项: 杂项任务,如启用跟踪标志或从内存中删除 DLL。


信息: 收集并显示各种类型信息的任务。


验证: 对数据库、表、索引、目录、文件组或数据库页的分配进行的验证操作


二、DBBCC维护语句:对数据库、索引或文件组进行维护的任务


DBCC CLEANTABLE。回收删除的可变长度列和文本列的空间。


DBCC CLEANTABLE


(


{ ’database_name’ | database_id | 0 }


,{ ’table_name’ | table_id | ’view_name’ | view_id }


[ , batch_size ]


)


[ WITH NO_INFOMSGS ]


DBCC INDEXDEFRAG。指定表或视图的索引碎片整理。


DBCC INDEXDEFRAG


(


{ ’database_name’ | database_id | 0 }


, { ’table_name’ | table_id | ’view_name’ | view_id }


, { ’index_name’ | index_id }


, { partition_number | 0 }


)


[ WITH NO_INFOMSGS ]


DBCC DBREINDEX。 对指定数据库中的表重新生成一个或多个索引。


DBCC DBREINDEX


(


’table_name’


[ , ’index_name’ [ , fillfactor ] ]


)


[ WITH NO_INFOMSGS ]


DBCC SHRINKDATABASE。 收缩指定数据库中的数据文件大小。


DBCC SHRINKDATABASE


( ’database_name’ | database_id | 0


[ ,target_percent ]


[ , { NOtruncate | truncateONLY } ]


)


[ WITH NO_INFOMSGS ]


DBCC dropCLEANBUFFERS。 从缓冲池中删除所有清除缓冲区。DBCC dropCLEANBUFFERS [ WITH NO_INFOMSGS ]


DBCC SHRINKFILE。 收缩相关数据库的指定数据文件或日志文件大小。


DBCC SHRINKFILE


(


{ ’file_name’ | file_id }


{ [ , EMPTYFILE ]


| [ [ , target_size ] [ , { NOtruncate | truncateONLY } ] ]


}


)


[ WITH NO_INFOMSGS ]


  DBCC FREEPROCCACHE。 从过程缓存中删除所有元素。DBCC FREEPROCCACHE [ WITH NO_INFOMSGS ]


  DBCC updateUSAGE 报告目录视图中的页数和行数错误并进行更正。


DBCC updateUSAGE


( { ’database_name’ | database_id | 0 }


[ , { ’table_name’ | table_id | ’view_name’ | view_id }


[ , { ’index_name’ | index_id } ] ]


) [ WITH [ NO_INFOMSGS ] [ , ] [ count_ROWS ]


]


三、DBBCC验证语句:对数据库、表、索引、目录、文件组或数据库页的分配进行的验证操作


DBCC CHECKALLOC。检查指定数据库的磁盘空间分配结构的一致性。


DBCC CHECKALLOC


[


(


[ ’database_name’ | database_id | 0 ]


[ , NOINDEX


|


{ REPAIR_ALLOW_DATA_LOSS


| REPAIR_FAST


| REPAIR_REBUILD


} ]


)


]


[ WITH { [ ALL_ERRORMSGS ]


[ , NO_INFOMSGS ]


[ , TABLOCK ]


[ , ESTIMATEONLY ]


}


]


DBCC CHECKFILEGROUP。检查当前数据库中指定文件组中的所有表的分配和结构完整性。


DBCC CHECKFILEGROUP


[


(


[ { ’filegroup_name’ | filegroup_id | 0 } ]


[ , NOINDEX ]


)


]


[ WITH


{


[ ALL_ERRORMSGS ]


[ NO_INFOMSGS ] ]


[ , [ TABLOCK ] ]


[ , [ ESTIMATEONLY ] ]


}


]


DBCC CHECKCATALOG。检查指定数据库内的目录一致性。数据库必须联机。


DBCC CHECKCATALOG


[


(


’database_name’ | database_id | 0


)


]


[ WITH NO_INFOMSGS ]


DBCC CHECKIDENT。 检查指定表的当前标识值,如有必要,则更改标识值。


DBCC CHECKIDENT


(


’table_name’


[ , {


NORESEED | { RESEED [ , new_reseed_value ] }


}


]


)


[ WITH NO_INFOMSGS ]


  DBCC CHECKCONSTRAINTS。 检查当前数据库中指定表上的指定约束或所有约束的完整性。


DBCC CHECKCONSTRAINTS


[


(


’table_name’ | table_id | ’constraint_name’ | constraint_id


)


]


[ WITH


{ ALL_CONSTRAINTS | ALL_ERRORMSGS } [ , NO_INFOMSGS ]


]


DBCC CHECKTABLE。检查组成表或索引视图的所有页和结构的完整性。


DBCC CHECKTABLE


(


’table_name’ | ’view_name’


[ , NOINDEX


| index_id


| { REPAIR_ALLOW_DATA_LOSS


| REPAIR_FAST


| REPAIR_REBUILD }


]


)


[ WITH


{ [ ALL_ERRORMSGS ]


[ , [ NO_INFOMSGS ] ]


[ , [ TABLOCK ] ]


[ , [ ESTIMATEONLY ] ]


[ , [ PHYSICAL_ONLY ] ]


}


]

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

Alizze
Alizze

相关推荐