DBCC是SQL Server提供的一組控制臺(tái)命令,功能很強(qiáng)大,掌握一些必要的語句,對(duì)操作數(shù)據(jù)庫(kù)有不少幫助,所以決定整理一下,發(fā)現(xiàn)已有不少類似的整理,減少了不少工作,歸類如下:
一、DBCC 幫助類命令
* DBCC HELP(’?’)
查詢所有的DBCC命令
* DBCC HELP(’命令’)
查詢指定的DBCC命令的語法說明
* DBCC USEROPTIONS
返回當(dāng)前連接的活動(dòng)(設(shè)置)的SET選項(xiàng)
二、DBCC 檢查驗(yàn)證類命令
* DBCC CHECKALLOG (’數(shù)據(jù)庫(kù)名稱’)
檢查指定數(shù)據(jù)庫(kù)的磁盤空間分配結(jié)構(gòu)的一致性
* DBCC CHECKCATALOG (’數(shù)據(jù)庫(kù)名稱’)
檢查指定數(shù)據(jù)庫(kù)的系統(tǒng)表內(nèi)和系統(tǒng)表間的一致性
* DBCC CHECKCONSTAINTS (’tablename’)
檢查指定表上的指定約束或所有約束的完整性
* DBCC CHECKDB
檢查數(shù)據(jù)庫(kù)中的所有對(duì)象的分配和結(jié)構(gòu)完整性
* DBCC CHECKFILEGROUP
檢查指定文件組中所有表在當(dāng)前數(shù)據(jù)庫(kù)中的分配和結(jié)構(gòu)完整性
* DBCC CHECKTABLE
檢查指定表或索引視圖的數(shù)據(jù)、索引及test、ntest和image頁(yè)的完整性
* DBCC CHECKIDENT
檢查指定的當(dāng)前標(biāo)識(shí)值
* DBCC SQLPERF(UMSSTATS) undocumented in BOL
可以用來檢查是否CPU使用達(dá)到瓶頸
最關(guān)鍵的一個(gè)參考數(shù)據(jù)num runnable,表明當(dāng)前有多少個(gè)線程再等待運(yùn)行
如果大于等于2,考慮CPU達(dá)到瓶頸
三、DBCC 維護(hù)類命令
* DBCC CLEANTABLE (’db_name’,’table_name’)
回收Alter table drop column語句刪除可變長(zhǎng)度列或text
* DBCC DBREINDEX
重建指定數(shù)據(jù)庫(kù)的一個(gè)或多個(gè)索引
* DBCC INDEXDEFRAG
對(duì)表或視圖上的索引和非聚集索引進(jìn)行碎片整理
* DBCC PINTABLE (db_id,object_id)
將表數(shù)據(jù)駐留在內(nèi)存中
查看哪些表駐留在內(nèi)存的方法是:
select objectproperty(object_id(’tablename’),‘tableispinned’)
* DBCC UNPINTABLE (db_id,object_id)
撤消駐留在內(nèi)存中的表
* DBCC SHRINKDATABASE(db_id,int)
收縮指定數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和日志文件大小
* DBCC SHRINKFILE(file_name,int)
收縮相關(guān)數(shù)據(jù)庫(kù)的指定數(shù)據(jù)文件和日志文件大小
四、DBCC 性能調(diào)節(jié)命令
* DBCC dllname(FREE)
sp_helpextendedproc 查看加載的擴(kuò)展PROC
在內(nèi)存中卸載指定的擴(kuò)展過程動(dòng)態(tài)鏈接庫(kù)(dll)
* DBCC DROPCLEANBUFFERS
從緩沖池中刪除所有緩沖區(qū)
* DBCC FREEPROCCACHE
從過程緩沖區(qū)刪除所有元素
* DBCC INPUTBUFFER
顯示從客戶機(jī)發(fā)送到服務(wù)器的最后一個(gè)語句
* DBCC OPENTRAN (db_name)
查詢某個(gè)數(shù)據(jù)庫(kù)執(zhí)行時(shí)間最久的事務(wù),由哪個(gè)程序擁有
* DBCC SHOW_STATISTICS
顯示指定表上的指定目標(biāo)的當(dāng)前分布統(tǒng)計(jì)信息
* DBCC SHOWCONTIG
顯示指定表的數(shù)據(jù)和索引的碎片信息
* DBCC SQLPERF
(logspace) 查看各個(gè)DB的日志情況
(iostats) 查看IO情況
(threads) 查看線程消耗情況
返回多種有用的統(tǒng)計(jì)信息
* DBCC CACHESTATS
顯示SQL Server 2000內(nèi)存的統(tǒng)計(jì)信息
* DBCC CURSORSTATS
顯示SQL Server 2000游標(biāo)的統(tǒng)計(jì)信息
* DBCC MEMORYSTATS
顯示SQL Server 2000內(nèi)存是如何細(xì)分的
* DBCC SQLMGRSTATS
顯示緩沖中先讀和預(yù)讀準(zhǔn)備的SQL語句
一、DBCC 幫助類命令
* DBCC HELP(’?’)
查詢所有的DBCC命令
* DBCC HELP(’命令’)
查詢指定的DBCC命令的語法說明
* DBCC USEROPTIONS
返回當(dāng)前連接的活動(dòng)(設(shè)置)的SET選項(xiàng)
二、DBCC 檢查驗(yàn)證類命令
* DBCC CHECKALLOG (’數(shù)據(jù)庫(kù)名稱’)
檢查指定數(shù)據(jù)庫(kù)的磁盤空間分配結(jié)構(gòu)的一致性
* DBCC CHECKCATALOG (’數(shù)據(jù)庫(kù)名稱’)
檢查指定數(shù)據(jù)庫(kù)的系統(tǒng)表內(nèi)和系統(tǒng)表間的一致性
* DBCC CHECKCONSTAINTS (’tablename’)
檢查指定表上的指定約束或所有約束的完整性
* DBCC CHECKDB
檢查數(shù)據(jù)庫(kù)中的所有對(duì)象的分配和結(jié)構(gòu)完整性
* DBCC CHECKFILEGROUP
檢查指定文件組中所有表在當(dāng)前數(shù)據(jù)庫(kù)中的分配和結(jié)構(gòu)完整性
* DBCC CHECKTABLE
檢查指定表或索引視圖的數(shù)據(jù)、索引及test、ntest和image頁(yè)的完整性
* DBCC CHECKIDENT
檢查指定的當(dāng)前標(biāo)識(shí)值
* DBCC SQLPERF(UMSSTATS) undocumented in BOL
可以用來檢查是否CPU使用達(dá)到瓶頸
最關(guān)鍵的一個(gè)參考數(shù)據(jù)num runnable,表明當(dāng)前有多少個(gè)線程再等待運(yùn)行
如果大于等于2,考慮CPU達(dá)到瓶頸
三、DBCC 維護(hù)類命令
* DBCC CLEANTABLE (’db_name’,’table_name’)
回收Alter table drop column語句刪除可變長(zhǎng)度列或text
* DBCC DBREINDEX
重建指定數(shù)據(jù)庫(kù)的一個(gè)或多個(gè)索引
* DBCC INDEXDEFRAG
對(duì)表或視圖上的索引和非聚集索引進(jìn)行碎片整理
* DBCC PINTABLE (db_id,object_id)
將表數(shù)據(jù)駐留在內(nèi)存中
查看哪些表駐留在內(nèi)存的方法是:
select objectproperty(object_id(’tablename’),‘tableispinned’)
* DBCC UNPINTABLE (db_id,object_id)
撤消駐留在內(nèi)存中的表
* DBCC SHRINKDATABASE(db_id,int)
收縮指定數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和日志文件大小
* DBCC SHRINKFILE(file_name,int)
收縮相關(guān)數(shù)據(jù)庫(kù)的指定數(shù)據(jù)文件和日志文件大小
四、DBCC 性能調(diào)節(jié)命令
* DBCC dllname(FREE)
sp_helpextendedproc 查看加載的擴(kuò)展PROC
在內(nèi)存中卸載指定的擴(kuò)展過程動(dòng)態(tài)鏈接庫(kù)(dll)
* DBCC DROPCLEANBUFFERS
從緩沖池中刪除所有緩沖區(qū)
* DBCC FREEPROCCACHE
從過程緩沖區(qū)刪除所有元素
* DBCC INPUTBUFFER
顯示從客戶機(jī)發(fā)送到服務(wù)器的最后一個(gè)語句
* DBCC OPENTRAN (db_name)
查詢某個(gè)數(shù)據(jù)庫(kù)執(zhí)行時(shí)間最久的事務(wù),由哪個(gè)程序擁有
* DBCC SHOW_STATISTICS
顯示指定表上的指定目標(biāo)的當(dāng)前分布統(tǒng)計(jì)信息
* DBCC SHOWCONTIG
顯示指定表的數(shù)據(jù)和索引的碎片信息
* DBCC SQLPERF
(logspace) 查看各個(gè)DB的日志情況
(iostats) 查看IO情況
(threads) 查看線程消耗情況
返回多種有用的統(tǒng)計(jì)信息
* DBCC CACHESTATS
顯示SQL Server 2000內(nèi)存的統(tǒng)計(jì)信息
* DBCC CURSORSTATS
顯示SQL Server 2000游標(biāo)的統(tǒng)計(jì)信息
* DBCC MEMORYSTATS
顯示SQL Server 2000內(nèi)存是如何細(xì)分的
* DBCC SQLMGRSTATS
顯示緩沖中先讀和預(yù)讀準(zhǔn)備的SQL語句