SQL Server資料修複常用命令DBCC

來源:互聯網
上載者:User
MS Sql Server 提供了很多資料庫修複的命令,當資料庫質疑或是有的無法完成讀取時可以嘗試這些修複命令。1. DBCC CHECKDB重啟伺服器後,在沒有進行任何操作的情況下,在SQL查詢分析器中執行以下SQL進行資料庫的修複,修複資料庫存在的一致性錯誤與分配錯誤。use masterdeclare @databasename varchar(255)set @databasename='需要修複的資料庫實體的名稱' exec sp_dboption @databasename, N'single', N'true' --將目標資料庫置為單使用者狀態dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)dbcc checkdb(@databasename,REPAIR_REBUILD)exec sp_dboption @databasename, N'single', N'false'--將目標資料庫置為多使用者狀態然後執行 DBCC CHECKDB('需要修複的資料庫實體的名稱') 檢查資料庫是否仍舊存在錯誤。注意:修複後可能會造成部分資料的丟失。2. DBCC CHECKTABLE如果DBCC CHECKDB 檢查仍舊存在錯誤,可以使用DBCC CHECKTABLE來修複。use 需要修複的資料庫實體的名稱declare @dbname varchar(255)set @dbname='需要修複的資料庫實體的名稱'exec sp_dboption @dbname,'single user','true'dbcc checktable('需要修複的資料表的名稱',REPAIR_ALLOW_DATA_LOSS)dbcc checktable('需要修複的資料表的名稱',REPAIR_REBUILD)------把’ 需要修複的資料表的名稱’更改為執行DBCC CHECKDB時報錯的資料表的名稱exec sp_dboption @dbname,'single user','false'3. 其他的一些常用的修複命令DBCC DBREINDEX 重建指定資料庫中表的一個或多個索引用法:DBCC DBREINDEX (表名,’’) 修複此表所有的索引。還有其他很多修複命令,諸如DBCC CHECKIDENT 等等,用到的機率比較小,大家可以在ms sql server 的 聯機叢書中檢索一下。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.