您好,登錄后才能下訂單哦!
SQL中DBCC常用語句及修復數(shù)據(jù)庫方法是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
維護語句
DBCC DBREINDEX 重建指定數(shù)據(jù)庫中表的一個或多個索引
DBCC DBREPAIR 除去損壞的數(shù)據(jù)庫
DBCC INDEXDEFRAG 整理指定的表或視圖的聚集索引和輔助索引碎片
DBCC SHRINKDATABASE 收縮指定數(shù)據(jù)庫中的數(shù)據(jù)文件大小
DBCC SHRINKFILE 收縮相關(guān)數(shù)據(jù)庫的指定數(shù)據(jù)文件或日志文件大小
DBCC UPDATEUSAGE 報告和更正sysindexes 表的不正確內(nèi)容,
該內(nèi)容可能會導致通過sp_spaceused
系統(tǒng)存儲過程產(chǎn)生不正確的空間使用報表
狀態(tài)語句
DBCC INPUTBUFFER 顯示從客戶端發(fā)送到MS SQL Server 的最后一個語句
DBCC OPENTRAN 如果在指定數(shù)據(jù)庫內(nèi)存在最舊的活動事務和最舊的分布和 非分布式復制事務,
則顯示與之相關(guān)的信息。只有當存在活動事務或數(shù)據(jù)庫包含復制信息時,
才顯示結(jié)果。如果沒有活動事務,就顯示信息性消息
DBCC OUTPUTBUFFER 以十六進制或ASCII 格式返回指定系統(tǒng)進程ID (SPID) 的當前輸出緩沖區(qū)
DBCC PROCCACHE 以報表形式顯示有關(guān)過程高速緩存的信息
DBCC SHOWCONTIG 顯示指定的表的數(shù)據(jù)和索引的碎片信息
DBCC SHOW_STATISTICS 顯示指定表上的指定目標的當前分布統(tǒng)計信息
DBCC SQLPERF 提供有關(guān)所有數(shù)據(jù)庫中的事務日志空間使用情況的統(tǒng)計信息
DBCC TRACESTATUS 顯示跟蹤標記的狀態(tài)
DBCC USEROPTIONS 返回當前連接的活動(設置)的SET 選項
驗證語句
DBCC CHECKALLOC 檢查指定數(shù)據(jù)庫的磁盤空間分配結(jié)構(gòu)的一致性
DBCC CHECKCATALOG 檢查指定數(shù)據(jù)庫中的系統(tǒng)表內(nèi)及系統(tǒng)表間的一致性
DBCC CHECKCONSTRAINTS 檢查指定表上的指定約束或所有約束的完整性
DBCC CHECKDB 檢查指定數(shù)據(jù)庫中的所有對象的分配和結(jié)構(gòu)完整性
DBCC CHECKFILEGROUP 檢查指定文件組中的所有表(在當前數(shù)據(jù)庫中)的分配和結(jié)構(gòu)完整性
DBCC CHECKIDENT 檢查指定表的當前標識值,如有必要,還對標識值進行更正
DBCC CHECKTABLE 檢查指定表或索引視圖的數(shù)據(jù)、索引及text、ntext 和image 頁的完整性
DBCC NEWALLOC 檢查數(shù)據(jù)庫的擴展結(jié)構(gòu)內(nèi)的每個表的數(shù)據(jù)和索引頁的分配
其他語句
DBCC dllname (FREE) 從內(nèi)存中卸載指定的擴展存儲過程動態(tài)鏈接庫(DLL)
DBCC HELP 返回指定的DBCC 語句的語法信息
DBCC PINTABLE 將表標記為駐留,這表示MS SQL Server不從內(nèi)存中刷新表頁
DBCC ROWLOCK 在MS SQL Server 6.5 版中使用,對表啟用插入行鎖定(IRL) 操作
DBCC TRACEOFF 禁用指定的跟蹤標記
DBCC TRACEON 打開(啟用)指定的跟蹤標記
DBCC UNPINTABLE 將表標記為不在內(nèi)存駐留。將表標記為不在內(nèi)存駐留后,
可以清空高速緩存中的表頁
常用的修復數(shù)據(jù)庫的腳本方法
--testdb為數(shù)據(jù)庫名稱,把所有的testdb改為對應的數(shù)據(jù)庫名稱
--'D:\data\testdb_log.ldf'是數(shù)據(jù)庫日志文件的路徑,這里也要改成對應的
use master
go
sp_configure 'allow updates',1
go
reconfigure with override
go
update sysdatabases set status=-32768 where dbid=DB_ID('testdb')
go
--先執(zhí)行語句的上面所有部門,執(zhí)行完后,到數(shù)據(jù)庫的存放路徑里把testdb.ldf文件改一個名
--然后再執(zhí)行下面這一句
dbcc rebuild_log('testdb','D:\data\testdb_log.ldf')
go
--執(zhí)行完上面這一句成功后,再執(zhí)行最后所有的語句
sp_dboption 'D:\data\testdb_log.ldf'','dbo use only','false'
go
sp_configure 'allow updates',0
go
reconfigure with override
go
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。