• 24小時服務熱線:
  • 0838-6611186


☞ 您的位置:首頁 › > 網站運營

MSSQL數據庫置疑處理辦法匯總
          發布日期:2015-04-23 20:58:51 人氣: 標簽:

方法一:
1.停止SQL Server的服務,然后備份MS SQL Server的安裝目錄下的\data子目錄.
注意:整個目錄目錄備份或只備份data目錄下置疑數據庫的兩個文件,一個數據文件yangjin_data.mdf,一個yangjin_log.ldf(也有可能非此命名),同時查看磁盤空間是否有足夠的空間;
2.啟用SQL Server的服務。打開查詢分析器(Query Analyzer)的工具,以用戶sa登錄;
3.輸入如下指令后點工具欄上的綠色箭頭運行(快捷鍵F5),
use master
go
sp_resetstatus yangjin
go
4.運行完畢后退出此工具,停止SQL Server的服務.
5.在MS SQL Server的安裝目錄下,有一個\data子目錄,其中存放數據文件,包括SQL Server和本系統的數據文件,刪除置疑數據庫的日志文件yangjin_log.ldf(也有可能非此命名).
6.啟動SQL Server的服務.
7.打開企業管理器的工具,查看數據庫節點下的yangjin是否恢復。
注:請將 yangjin 換成你的數據庫名稱.

方法二
1.查看磁盤空間,保證存放數據庫的磁盤有足夠的剩余空間;
2.打開SQL Server的查詢分析器,以用戶 sa 登錄;
3.輸入如下指令后點工具欄上的綠色箭頭運行(快捷鍵F5),運行完畢后退出此工具.
use master
go
sp_resetstatus yangjin
go
4.停止SQL Server 的服務,再重新啟動SQL Server 服務.
5.打開SQL Server 的查詢分析器,以用戶 sa 登錄。輸入如下指令后點工具欄上的綠色箭頭運行,運行完畢后退出此工具:
use master
go
DBCC DBRECOVER (yangjin)
go
6.打開 SQL Server 的企業管理器,查看 database下的yangjin是否恢復。
注:請將 yangjin 替換為你的數據庫名稱.

方法三
如上述兩種方法都不能恢復,或出現故障后在SQL Server的企業管理器中的數據庫節點下看不到你的數據庫,表示你的數據庫出現較大的錯誤或故障,請按下述步驟操作嘗試恢復.
1.停止SQL Server 服務.
2.備份數據庫文件
 在MS SQL Server的安裝目錄下,有一個\data子目錄,其中存放數據文件,包括SQL Server和本系統的數據文件,把數據文件yangjin_data.mdf和日志文件yangjin_log.ldf備份起來.
3.啟動SQL Server服務,打開企業管理器,刪除數據庫,通常\data子目錄下的數據文件yangjin_data.mdf和日志文件yangjin_log.ldf都會被刪除,把備份好的數據文件和日志文件再復制一份到\data子目錄下.
4.打開查詢分析器,執行如下SQL語句
use master
go
EXEC sp_attach_db @dbname = yangjin,
  @filename1 = 'd:\Data\yangjin_data.mdf',
  @filename2 = 'd:\Data\yangjin_log.ldf'
go
5.再在企業管理器中查看你的數據庫是否恢復.
注:請把 yangjin 換為你的數據庫名稱
@filename1 是數據文件的路徑地址.
@filename2 是日志文件的路徑地址.

方法四:
如果還是不能恢復:如方法三執行時,查詢分析器返回錯誤信息,請嘗試以下步聚恢復數據庫.
1.停止SQL Server的服務,備份SQL Server安裝目錄下的\data子目錄下故障數據庫的兩個文件,一個數據文件yangjin_data.mdf,一個yangjin_log.ldf(也有可能非此命名),同時查看磁盤空間是否有足夠的空間;
2.啟動SQL Server服務(如已停止),創建一個新的數據庫,命名為原來數據庫的名字。
3.停止SQL Server
4.把老數據庫的MDF文件(yangjin_data.mdf)替換新數據庫的相應的MDF文件,并把LDF文件(yangjin_log.ldf)刪除。
5.重新啟動SQL Server服務,然后運行如下命令:
Use Master
go
sp_configure 'allow updates', 1
reconfigure with override
go
begin tran
update sysdatabases set status = 32768 where name = 'yangjin'
--Verify one row is updated before committing
commit tran
go

6.停止SQL然后重新啟動SQL Server服務,然后運行如下命令(更換日志文件路徑地址):
use master
go
DBCC TRACEON(3604)
DBCC REBUILD_LOG('db_name','d:\Data\yangjin_log.ldf')
go

7.停止SQL然后重新啟動SQL Server服務,然后運行:
use master
go
update sysdatabases set status = 8 where name = 'yangjin'
go
sp_configure 'allow updates', 0
reconfigure with override
go
8.運行dbcc checkdb(db_name) 檢查數據庫的完整性
修復數庫
注:都要把 yangjin 替換成真實的數據庫名字。
 

  • 上一篇:sqlserver2000出現孤立用戶的解決方法
  • 下一篇:沒有了
  • 南粤风采26选5