国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Sql Server - SQLServer 數據修復命令DBCC一覽

SQLServer 數據修復命令DBCC一覽

2019-11-18 15:02mssql教程網 Sql Server

MS Sql Server 提供了很多數據庫修復的命令,當數據庫質疑或是有的無法完成讀取時可以嘗試這些修復命令。

1. DBCC CHECKDB 
  重啟服務器后,在沒有進行任何操作的情況下,在SQL查詢分析器中執行以下SQL進行數據庫的修復,修復數據庫存在的一致性錯誤與分配錯誤。 
use master 
declare @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 (表名,'') 修復此表所有的索引。 
=================================== 
SQL SERVER數據庫的檢測及修復方法 
隨著K/3產品的推廣,要求客戶服務人員對SQL SERVER數據庫的了解也進一步提高。在K/3的使用過程中,數據庫文件被頻繁地使用,由于某些原因,數據庫有可能被損壞,本文將針對這種情況的數據庫檢測及修復方法做一簡單講解。希望各位在實際工作過程中有新的發現時,及時給我們提供信息,以便做進一步的更新。 
1.1 SQL SERVER數據庫的檢測 
SQL SERVER提供了數據庫檢測的命令,可用DBCC CHECKDB對數據庫中各個對象的分配及結構的正確性進行檢測,并可通過一參數控制,將所有的錯誤信息顯示出來。其語法如下: 
DBCC CHECKDB 
('database_name' [,NOINDEX | { REPAIR_ALLOW_DATA_LOSS 
| REPAIR_FAST 
| REPAIR_REBUILD 
}] 
) [WITH {ALL_ERRORMSGS | NO_INFOMSGS}] 
參數說明: 
'database_name'代表被檢測的數據庫實體名; 
NOINDEX指非系統表的非聚族索引不檢測; 
REPAIR_ALLOW_DATA_LOSS | REPAIR_FAST| REPAIR_REBUILD 指直接修復發現的錯誤,其中REPAIR_ALLOW_DATA_LOSS代表,若此錯誤不能修復時,系統將直接刪除相關數據。帶此三個參數的任一個時,數據庫必須處于單用戶模式,可在Enterprise Manager中的數據庫屬性中設置; 
ALL_ERRORMSGS代表將檢測到的錯誤信息全部顯示出來,否則,對于每張表最多只顯示200條錯誤信息; 
NO_INFOMSGS代表隱藏所有的信息及占用空間的報告。 
經過檢測,對于錯誤的對象,將以OBJECT ID的形式報告具體出錯的信息,可根據OBJECT ID到系統表sysobjects中查找到相關的表,即NAME。 
1.2 SQL SERVER問題數據庫的修復 
經過數據庫檢測后,可針對出現的問題采取相應的措施進行處理。如通過檢測后,發現對象的物理存放存在問題,可用DBCC CHECKALLOC來進行修復: 
DBCC CHECKALLOC ('database_name' | REPAIR_REBUILD }] ) [WITH {ALL_ERRORMSGS | NO_INFOMSGS}] 
若是非系統對象的索引出錯,則可用DBCC DBREINDEX進行修復: 
DBCC DBREINDEX ( [ 'database.owner.table_name' [, index_name [, fillfactor ] ] ] ) [WITH NO_INFOMSGS] 
以上兩種情況,也可直接使用DBCC CHECKDB(‘db_name',repair_rebuild)來修復。 
另外一種情況是在進行檢測時,提示無法建立數據連接,此時表明,數據庫已損壞。對于這種情況,我們可采取如下措施來嘗試修復。 
首先,在SQL Enterprise中新建一數據庫(如數據庫名為test),建好數據庫后,停止SQL Server Service Manager,并將客戶數據庫的MDF文件更名為test _data.mdf(即新建數據庫的主文件名),然后用更名后的文件覆蓋新建數據庫同名文件,接著,啟動SQL Server Service Manager。對Master數據庫將系統表設置為可更改狀態 
Use Master 
Go 
sp_configure 'allow updates', 1 
reconfigure with override 
Go 
將數據庫設為緊急狀態: 
update sysdatabases set status = 32768 where database ' 
停止并重新啟動SQL Server Service Manager,并重建Log文件: 
DBCC TRACEON (3604) 
DBCC REBUILD_LOG(' test ','test _log_ldf') 
將數據庫設置為單用戶模式,然后進行檢測: 
sp_dboption ' test ', 'single user', 'true' 
DBCC CHECKDB(' test ') 
Go 
此數據庫執行CHECKDB的過程中發現一些表的索引被破壞,于是針對具體的表進行重建索引的操作: 
DBCC DBREINDEX(表名) 
如執行以上操作仍然不能解決,若索引破壞的表是臨時表或不是關鍵表,則可從新建賬套中引入,若是主表,則可能通過近期的備份來(部份)恢復。若沒有一個備份,則無法修復。 
1.3 SQL Server數據庫為什么易損壞呢? 
以下是微軟提供的一些可能引起數據庫損壞的原因及一些預防措施: 
操作問題,包括冷起動機器、熱拔硬盤、刪除一些數據庫文件; 
硬件問題,包括磁盤控制器的問題; 
操作系統問題,包括與系統相關的一些致命錯誤。 
1.4 預防措施: 
1、定期/不定期執行CHKDSK(不帶參數),以檢測硬盤物理結構并修復一些CHKDSK報告的問題; 
2、常備份數據。 
1.5 應用數據庫修復舉例 
declare @databasename varchar(255) 
set @databasename='AIS20021224170730'------一定要手工輸入 
---------執行一般性修復還存在問題時,進行允許數據丟失的修復 
---------許數據丟失的修復要求在單用戶下進行,此時請退出中間層,客戶端,sql的其他模塊 
---所有功能退出,在查詢分析器master里設置數據庫為單用戶 
exec sp_dboption @databasename, N'single', N'true' 
-----在查詢分析器master里,進行修復數據庫 
dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) 
dbcc checkdb(@databasename,REPAIR_REBUILD) 
------還原數據庫狀態 
exec sp_dboption @databasename, N'single', N'false' 
第2章數據庫日志損壞的修復 
請遵照如下步驟來試圖重建數據庫事務日志. 
注意: 由于事務日志丟失, 數據庫可能有沒有提交的數據. 
注:都要替換成真實的數據庫名字 
2.1 步驟1: 
創建一個新的數據庫,命名為原來數據庫的名字. 
2.2步驟2: 
停止SQL Server 
2.3步驟3: 
把老數據庫的MDF文件替換新數據庫的相應的MDF文件, 并把LDF文件刪除 
2.4步驟4: 
重新啟動SQL Server 服務,然后運行如下命令: 

復制代碼代碼如下:


Use Master 
Go 
sp_configure 'allow updates', 1 
reconfigure with override 
Go 
begin tran 
update sysdatabases set status = 32768 where db_name' 
-- Verify one row is updated before committing 
commit tran 


2.5步驟5: 
停止SQL然后重新啟動SQL Server 服務,然后運行如下命令: 
DBCC TRACEON (3604) 
DBCC REBUILD_LOG('db_name','c:\mssql7\data\dbxxx_3.LDF') 
Go 
2.6步驟6: 
停止SQL然后重新啟動SQL Server 服務,然后運行: 

復制代碼代碼如下:


use master 
update sysdatabases set status = 8 where 
Go 
sp_configure 'allow updates', 0 
reconfigure with override 
Go 


2.7步驟7: 
運行dbcc checkdb(db_name)檢查數據庫的完整性. 
第3章 數據庫質疑的一般處理 
1、執行如下SQL(打開修改系統表的開關): 
EXEC sp_configure 'allow updates', 1 
RECONFIGURE WITH OVERRIDE 
2、修改數據庫Master中的表:sysdatabases 
將 status字段數值更改為4 
3、再執行如下SQL: 
EXEC sp_configure 'allow updates', 0 
RECONFIGURE WITH OVERRIDE。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产资源在线播放 | 国产一级一级国产 | 久久男人网| 毛片黄片免费观看 | 欧美91| 中文字幕精品一区 | 国产毛片久久久久 | 久久国内精品 | 亚洲免费久久久 | 亚洲精品久久久久久国 | 国产精品久久久久久久午夜 | 亚洲视频精品在线 | 亚洲高清视频一区二区 | 亚洲欧美影院 | 婷婷精品久久久久久久久久不卡 | 九九免费精品视频 | 激情久久久久 | 欧美成人精品一区二区 | av福利在线观看 | 成人午夜精品久久久久久久蜜臀 | 精品一区二区不卡 | 91久久国产精品 | av免费网站| 成人高清网站 | 91精品一区二区三区久久久久久 | 成人在线| 中文字幕,久热精品,视频在线 | 精一区二区 | 91视频.www| 成人午夜精品久久久久久久蜜臀 | 天堂视频在线 | 免费看的毛片 | 欧美自拍小视频 | 日韩免费 | 日韩中文字幕在线免费观看 | 九九亚洲精品 | 久久亚洲一区二区 | 九九久久久 | 九九热在线免费视频 | 91精品久久久久久久久 | 色av中文字幕 |