如何應用SQL Server DBCC避免堵塞

來源:互聯網
上載者:User

在危急時刻,資料庫一致性檢測(DBCC)可能是你最重要的工具。本文向你簡單介紹DBCC的功能,它們包括:

檢測表和相關目錄的完整性。

檢測整個資料庫。

檢測資料庫頁的完整性。

重建任何指定表中的目錄。

你為何需要學習DBCC

如果你甚至還不知道為何使用DBCC,下面提供一些原因:

需要不斷分割資料庫頁(表和目錄),這可能會破壞分配。

目錄可能遭到破壞,或效率降低。

SQL Server引擎有時會誤解你的意圖。

需要大量更新時,事情可能會很麻煩(記住,任何指定的更新實際為刪除和插入)。

單個頁面,雖然仍然“健康”,但可能會失去它們的最優儲存足跡。

如何運行DBCC

你可以用兩種方法運行DBCC:通過命令列視窗或查詢分析器(Query Analyzer)視窗。如果你認為必要,你還可以確定其操作的時間。

DBCC命令包括以下擴充:

CheckDB:檢測整個資料庫的一致性,是檢查資料庫破壞的基本方法。

CheckTable:檢測特定表的問題。

CheckAlloc:檢測資料庫的單個頁面,包括表和目錄。

Reindex:重建某個特定表的目錄。

CacheStats:說明當前儲存在記憶體緩衝中的對象。

DropCleanBuffers:釋放當前儲存在緩衝區中的所有資料,這樣你就可以繼續進行檢測,而不必使用前面的結果。

Errorlog:刪除(縮短)當前日誌。你可以考慮確定包含這個命令的操作的時間,一個星期左右運行一次。

FlushProclnDB:清除特定資料庫的預存程序緩衝(使用它的資料庫id而不是名稱)。使用下列代碼找出id:

SELECT dbid FROM master.dbo.sysdatabases

WHERE name = '<name your poison>

IndexDefrag:減少目錄分裂,但不給檔案加鎖,以便使用者能夠繼續應用程式資料庫。

CheckCatalog:檢測特定資料庫表及表之間的一致性(後者意味著使用外鍵等。)



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.