程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 恢復.mdf 數據庫步驟

恢復.mdf 數據庫步驟

編輯:關於SqlServer
方法一(只有mdf沒有日志文件的可以恢復) 證明有效
1.新建同名數據庫。
2.把該數據庫設置為脫機。
3.刪除其日志文件(.LDF),不刪除後邊的過程執行通不過。
4.在在查詢分析器中以超級用戶登入,執行以下存儲過程,必須以超級用戶登入,這是系統級存存處過程。
EXEC sp_detach_db @dbname = 'xxx' //@dbnam 為要還原的數據庫
EXEC sp_attach_single_file_db @dbname = 'xxx', @physname = 'yyyy' //@physname 為.mdf文件路徑
5.把該數據庫設置為聯機。
6.刷新數據庫,表出來了,數據完好
方法二(無日志文件或日志文件損壞)
  1.新建一個同名的數據庫
  2.再停掉sql server(注意不要分離數據庫)
  3.用原數據庫的數據文件覆蓋掉這個新建的數據庫
  4.再重啟sql server
5.此時打開企業管理器時會出現置疑,先不管,執行下面的語句(注意修改其中的數據庫名)
代碼如下:

use master
go
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
go

UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的數據庫名''
go

sp_dboption '置疑的數據庫名'', 'single user', 'true'
go

DBCC CHECKDB('置疑的數據庫名'')
go

update sysdatabases set status =28 where name='置疑的數據庫名''
go

sp_configure 'allow updates', 0 reconfigure with override
go

sp_dboption '置疑的數據庫名'', 'single user', 'false'
go

6.完成後一般就可以訪問數據庫中的數據了,這時,數據庫本身一般還要問題,解決辦法是,利用
數據庫的腳本創建一個新的數據庫,並將數據導進去就行了.
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved