增強(qiáng)版數(shù)據(jù)庫損壞和置疑的修復(fù)方法_第1頁
增強(qiáng)版數(shù)據(jù)庫損壞和置疑的修復(fù)方法_第2頁
增強(qiáng)版數(shù)據(jù)庫損壞和置疑的修復(fù)方法_第3頁
增強(qiáng)版數(shù)據(jù)庫損壞和置疑的修復(fù)方法_第4頁
增強(qiáng)版數(shù)據(jù)庫損壞和置疑的修復(fù)方法_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、專題:數(shù)據(jù)庫損壞和置疑的修復(fù)方法目錄數(shù)據(jù)庫損壞和置疑的發(fā)i生原因2數(shù)據(jù)庫是否損壞的判斷方法2數(shù)據(jù)庫損壞的常規(guī)修復(fù)處理方法(SQL 語句)2數(shù)據(jù)庫損壞使用工具修復(fù)的方法4數(shù)據(jù)庫置疑的處理方法5數(shù)據(jù)庫損壞和置疑的發(fā)生原因Sql Server 數(shù)據(jù)庫本身依賴于操作系統(tǒng)、文件讀寫等環(huán)境,數(shù)據(jù)庫經(jīng)常因為操作系統(tǒng)、異常關(guān)機(jī)、異常終止退出或者 SQL Server 數(shù)據(jù)庫本身的機(jī)制問題均會導(dǎo)致數(shù)據(jù)庫無故損壞,其中數(shù)據(jù)庫損壞的主要原因如下:1.事務(wù)日志問題。比如事務(wù)日志文件丟失;事務(wù)日志文件在操作過程中被誤刪;事務(wù)日志文件被損壞以及事務(wù)日志文件過大,導(dǎo)致硬盤的空間等。2.意外掉電或異常強(qiáng)制關(guān)機(jī),造成數(shù)據(jù)文件損

2、壞,主要數(shù)據(jù)庫正在被讀寫過程中異常關(guān)機(jī)。數(shù)據(jù)庫的表被破壞或索引等被破壞,或者數(shù)據(jù)庫的其他對象被破壞或丟失等。刪除了數(shù)據(jù)文件,或者更改了它的名字。硬盤損壞,造成數(shù)據(jù)和日志文件讀寫錯誤。3.4.5.6.7.或者其他人為破壞。其他文件讀寫、等原因。數(shù)據(jù)庫是否損壞的判斷方法-檢查指定數(shù)據(jù)庫中的所有對象的分配和結(jié)構(gòu)完整性的 SQl 語句,其中database_name 指代數(shù)據(jù)庫名稱DBCC CHECKDB ( database_name)執(zhí)行該數(shù)據(jù)庫檢查的結(jié)果若返回“CHECKDB 發(fā)現(xiàn)了 0 個分配錯誤和 0 個一致性錯誤(在數(shù)據(jù)庫 KgtMis2008DB 中)?!眲t說明數(shù)據(jù)庫正常無損壞,否則說明

3、數(shù)據(jù)庫損壞。數(shù)據(jù)庫損壞的常規(guī)修復(fù)處理方法(SQL 語句)-此處以 2000 增強(qiáng)版門店為例,如果是其他數(shù)據(jù)庫,請將對應(yīng)的KgtMis2008替換為相應(yīng)的數(shù)據(jù)庫名稱-1、第一步,請在查詢分析器中執(zhí)行下列語句.執(zhí)行前斷開其它所有數(shù)據(jù)庫連接,USE masterGo -2、第二步-單用戶模式EXEC sp_dboption KgtMis2008, single user, TRUEgo-3、數(shù)據(jù)庫修復(fù)DBCC CHECKDB (KgtMis2008,repair_rebuild)Go-再次數(shù)據(jù)庫檢查,如果返回結(jié)果中沒有了紅色的提示文字,說明修復(fù)成功;-否則意味著還需要更高級別的修復(fù);嘗試將上面修復(fù)語

4、句的repair_rebuild換為repair_allow_data_loss再試,之后再次檢查數(shù)據(jù)庫。DBCC CHECKDB(KgtMis2008)-如果還有錯誤未修復(fù),說明 SQL 修復(fù)失敗,請嘗試其他方法-4、退出前請一定要執(zhí)行以下語句返回到多用戶模式EXEC sp_dboption KgtMis2008, single user,FALSEGo/*注釋:DBCC CHECKDBDBCC CHECKDB 對索引視圖執(zhí)行物理一致性檢查。只用于向后兼容的 NOINDEX 選項也適用于索引視圖上的任何輔助索引。DBCC CHECKDB 是最安全的修復(fù)語句,因為它對最多的可能出現(xiàn)的各種錯誤進(jìn)

5、行標(biāo)識和修復(fù)。如果只數(shù)據(jù)庫中有分配錯誤,請執(zhí)行帶修復(fù)選項的 DBCC CHECKALLOC 以對這些錯誤進(jìn)行修復(fù)。然而,若要確保正確修復(fù)所有錯誤(包括分配錯誤),請執(zhí)行帶修復(fù)選項的 DBCCCHECKDB,而不要執(zhí)行帶修復(fù)選項的 DBCC CHECKALLOC。注釋:部分參數(shù)REPAIR_ALLOW_DATA_LOSS | REPAIR_FAST | REPAIR_REBUILD指定 DBCC CHECKDB 修復(fù)發(fā)現(xiàn)的錯誤。給定的 database_name 必須在單用戶模式下以使用修復(fù)選項,它可以是下列值之一。值描述REPAIR_ALLOW_DATA_LOSS執(zhí)行由 REPAIR_REBU

6、ILD 完成的所有修復(fù),包括對行和頁進(jìn)行分配和取消分配以改正分配錯誤、結(jié)構(gòu)行或頁的錯誤,以及刪除已損壞的文本對象。這些修復(fù)可能會導(dǎo)致一些數(shù)據(jù)丟失。修復(fù)操作可以在用戶事務(wù)下完成以允許用戶回滾*/數(shù)據(jù)庫損壞使用工具修復(fù)的方法使用“數(shù)據(jù)庫修復(fù)工具”工具進(jìn)行數(shù)據(jù)庫修復(fù),該工具會生成一個新的數(shù)據(jù)庫,新數(shù)據(jù)庫的名稱為“數(shù)據(jù)庫名+當(dāng)天日期”。點“修復(fù)”,查看修復(fù)過程是否有錯誤,如無錯誤,則將新生成的數(shù)據(jù)庫進(jìn)行備份,并還原成為原來的數(shù)據(jù)庫。數(shù)據(jù)庫置疑的處理方法查看中的數(shù)據(jù)庫(比如 DBMain,F(xiàn)DBMIS,KgtMis2008)是否為狀態(tài),如果為該“(置疑)”狀態(tài),則依次使用下面的方法進(jìn)行處理。步驟一:分離

7、“(置疑)”數(shù)據(jù)庫:所做的更改。如果回滾修復(fù),則數(shù)據(jù)庫仍會含有錯誤,應(yīng)該從備份進(jìn)行恢復(fù)。如果由于所提供修復(fù)等級的緣故遺漏某個錯誤的修復(fù),則將遺漏任何取決于該修復(fù)的修復(fù)。修復(fù)完成后,備份數(shù)據(jù)庫。REPAIR_FAST進(jìn)行小的、不耗時的修復(fù)操作,如修復(fù)非 索引中的附加鍵。這些修復(fù)可以很快完成,并且不會有丟失數(shù)據(jù)的危險。REPAIR_REBUILD執(zhí)行由 REPAIR_FAST 完成的所有修復(fù),包括需要較長時間的修復(fù)(如重建索引)。執(zhí)行這些修復(fù)時不會有丟失數(shù)據(jù)的 。步驟二:附加數(shù)據(jù)庫;附加數(shù)據(jù)庫的三種方法:方法 1:在企業(yè)管理器中手工操作,點擊右鍵,選擇“附加數(shù)據(jù)庫”,如下圖所示:其中的“D:DAT

8、AFDBMisCS.mdf”為你的數(shù)據(jù)文件在硬盤上的位置,以及相對應(yīng)的數(shù)據(jù)文件名稱?!案郊訛椋ˋ)”,其中“FDBMis”是要附加的數(shù)據(jù)庫名稱,這個名稱必須與原來使用的數(shù)據(jù)庫名稱一樣。方法 2:只用 mdf 文件進(jìn)行數(shù)據(jù)庫附加;方法 3:使用“查詢分析器”執(zhí)行以下進(jìn)行數(shù)據(jù)庫附加:sp_attach_single_file_db KgtMis2008, d:dataKgtMis2008Dat.mdf步驟三:A、新建一個空的數(shù)據(jù)庫,然后停止 SQLServer 服務(wù)管理器;B、替換數(shù)據(jù)庫的物理文件(比如 KgtMis2008Dat.mdf、KgtMis2008Log.ldf);C、執(zhí)行下列進(jìn)行修復(fù)

9、,如下圖打開“查詢分析器”:在“查詢分析器”中輸入以下,以 KgtMis2008 為例此操作可以將質(zhì)疑的數(shù)據(jù)的狀態(tài)修改為可查詢的狀態(tài),一般在重新啟動后,數(shù)據(jù)庫又會成為質(zhì)疑狀態(tài),所以使用“數(shù)據(jù)庫修復(fù)工具”進(jìn)行數(shù)據(jù)庫修復(fù)。D、使用“數(shù)據(jù)庫修復(fù)工具”進(jìn)行數(shù)據(jù)庫修復(fù),詳細(xì)操作見數(shù)據(jù)庫損壞使用工具修復(fù)的方法。USE MASTER GOSP_CONFIGURE ALLOW UPDATES,1 RECONFIGURE WITH OVERRIDE GOUPDATE SYSDATABASES SET SUS =32768 WHERE NAME= KgtMis2008Gosp_dboption KgtMis2008, single user, true GoDBCC CHECKDB(KgtMis2008)Goupdate sysdatabases set sus =28 where name=KgtMis2008Gosp_configure allow updates, 0 reconfigure with override Gosp_dbop

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論