SQLSERVER資料庫置疑、可疑、離線、單使用者、緊急模式等的修複

來源:互聯網
上載者:User

標籤:

資料庫出現置疑、可疑、離線、單使用者、緊急模式主要是因為資料庫的記錄檔除了問題,2000和2008修複方式不一樣,2008的修複指令碼在2000中不適用,主要是不被2000識別。

    假設資料庫名為:eisdoc:

    sqlserver2000資料庫置疑的處理方式:

1.設定資料庫允許直接作業系統表。

此操作可以在SQL Server Enterprise Manager裡面選擇資料庫伺服器,按右鍵,選擇“屬性”,在“伺服器設定”頁面中將“允許對系統目錄直接修改”一項選中。

2.設定eisdoc為緊急修複模式

update sysdatabases set status=-32768 where dbid=DB_ID(‘eisdoc‘) 關閉開啟企業管理器,此時可以在SQL Server Enterprise Manager裡面看到該資料庫處於“唯讀\置疑\離線\緊急模式”可以看到資料庫裡面的表,但是僅僅有系統資料表

3.重建資料庫記錄檔

dbcc rebuild_log(‘eisdoc‘,‘E:\Microsoft SQL Server\Data\eisdoc_log.ldf‘) 執行過程中,如果遇到下列提示資訊: 伺服器: 訊息 5030,層級 16,狀態 1,行 1 未能排它地鎖定資料庫以執行該操作。 DBCC 執行完畢。如果 DBCC 輸出了錯誤資訊,請與系統管理員聯絡。 說明您的其他程式正在使用該資料庫,如果剛才您在F步驟中使用SQL Server Enterprise Manager開啟了eisdoc庫的系統資料表,那麼退出SQL Server Enterprise Manager就可以了。(關閉企業管理器,如果別的機器從網路訪問資料庫,也把網路關閉) 正確執行完成的提示應該類似於: 警告: 資料庫 ‘eisdoc‘ 的日誌已重建。已失去事務的一致性。應運行 DBCC CHECKDB 以驗證物理一致性。將必須重設資料庫選項,並且可能需要刪除多餘的記錄檔。 DBCC 執行完畢。如果 DBCC 輸出了錯誤資訊,請與系統管理員聯絡。 此時開啟在SQL Server Enterprise Manager裡面會看到資料庫的狀態為“只供DBO使用”。此時可以訪問資料庫裡面的使用者表了。

4.驗證資料庫一致性(可省略)

dbcc checkdb(‘iBusinessWork‘) 一般執行結果如下: CHECKDB 發現了 0 個分配錯誤和 0 個一致性錯誤(在資料庫 ‘eisdoc‘ 中)。 DBCC 執行完畢。如果 DBCC 輸出了錯誤資訊,請與系統管理員聯絡。

5.設定資料庫為正常狀態

sp_dboption ‘eisdoc‘,‘dbo use only‘,‘false‘ 如果沒有出錯,那麼現在就可以正常的使用恢複後的資料庫啦。

6.關閉“允許對系統目錄直接修改”一項。

因為平時直接作業系統表是一件比較危險的事情。當然,我們可以在SQL Server Enterprise Manager裡面恢複。

 

    sqlserver2008資料庫可疑檔案的修複方式:

1.設定資料庫狀態,指令碼:EXEC sp_resetstatus ‘eisdoc‘

2.設定資料庫為緊急模式,指令碼:ALTER DATABASE eisdoc SET EMERGENCY

3.設定資料庫為單一使用者模式(對資料庫檢查修複只能在單一使用者模式下),指令碼:ALTER DATABASE eisdoc SET SINGLE_USER

4.檢查並修複資料庫,會提示你修複資料庫可能遺失資料,正常應該不會遺失資料庫資料,但是資料庫日誌的完整性將受到破壞,指令碼:DBCC CheckDB (eisdoc, REPAIR_ALLOW_DATA_LOSS)

5.恢複資料庫為多使用者模式,指令碼:ALTER DATABASE eisdoc SET MULTI_USER

-- 恢複資料庫狀態 ALTER  DATABASE  dbName  SET  ONLINE

 

以上五步即可修複sqlserver2008中的可疑檔案

 

 

原文連結:http://blog.sina.com.cn/s/blog_61feb2110101e2ez.html

SQLSERVER資料庫置疑、可疑、離線、單使用者、緊急模式等的修複

聯繫我們

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