SQL Server誤區30日談 第21天 資料損毀可以通過重啟SQL Server來修複_MsSql

來源:互聯網
上載者:User
誤區 #21:資料庫損壞可以通過重啟SQL Server或是Windows,或是附加和分離資料庫解決

錯誤

SQL Server中沒有任何一項操作可以修複資料損毀。損壞的頁當然需要通過某種機制進行修複或是恢複-但絕不是通過重啟動SQL Server,Windows亦或是分離附加資料庫。

而實際上,如果你的資料庫的損壞程度無法進行Crash Recovery的話(質疑狀態),那麼分離附加資料庫將會是你做的最糟糕的決定。這個原理是由於附加資料庫中包含Crash Recovery步驟,如果Crash Recovery失敗的話,那麼附加也會失敗。所以下面的技巧才是你所需要的:TechEd Demo: Creating, detaching, re-attaching, and fixing a suspect database。記住,永遠不要分離損壞的資料庫。
下面這類錯誤才是有可能通過重啟解決:

  • 如果在記憶體中的頁損壞,但在磁碟上的頁完好時,重啟能夠解決損壞問題
  • 如果損壞發生了,但是重啟過程中的某個步驟導致這個頁不再被分配,則貌似損壞通過重啟解決了,這個問題我之前已經有一篇博文進行闡述了:Misconceptions around corruptions: can they disappear?
  • 如果IO子系統也重啟,之前SQL Server對IO的需求被IO子系統“卡”住,則重啟貌似能解決問題,但實際上這並不是修複損壞,而只是讓出問題的IO子系統恢複。我只碰見過三四次這類情況。

    不管怎麼說,你起碼要做到有對應的備份策略或是容易系統進行恢複和容錯移轉。重啟可不是一個解決方案,這隻會浪費時間。
相關文章

聯繫我們

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