SQL SERVER恢復(fù)的方法
SQL SERVER恢復(fù)的方法是每一個DBA都應(yīng)該掌握的,下面就為您介紹SQL SERVER恢復(fù)的詳細步驟,如果您SQL SERVER恢復(fù)方面感興趣的話,不妨一看。
--SQL SERVER恢復(fù)步驟
--1. 恢復(fù)步驟:
--a.將smlog_log.ldf文件備份到其它目錄下;
--b.將源目錄下的smlog_log.ldf文件改名為smlog_log_bak.ldf;
--c.執(zhí)行以下語句修改數(shù)據(jù)庫的狀態(tài):
use Master
go
update sysdatabases set status=32768 where name='數(shù)據(jù)庫名稱' --修改狀態(tài),設(shè)為緊急狀態(tài)
go
shutdown with nowait --停止數(shù)據(jù)庫服務(wù)器
go
--d.退出SQL并在(COMMAND)命令行模式中通過下面的代碼重新啟動SQL:
sqlservr -c -T3608 -T4022 --安全模式啟動SQL SERVER
--e.在查詢分析器中執(zhí)行以下語句來查看剛剛修改過狀態(tài)的數(shù)據(jù)庫狀態(tài):
select Name,Status from sysdatabases where Name='數(shù)據(jù)庫名稱'
--f.執(zhí)行以下代碼新建日志文件:
dbcc traceon(3604)--跟蹤
dbcc rebuild_log('數(shù)據(jù)庫名稱','日志文件全路徑') --文件名要有全路徑和擴展名
--dbcc rebuild_log('prs_msc','d:\mscsql\mssql\data\prs_msc_log.ldf
--g.將數(shù)據(jù)庫置回正常狀態(tài):
update sysdatabases set status=0 where name='數(shù)據(jù)庫名稱'
--h.重新啟動數(shù)據(jù)庫后執(zhí)行以下語句檢查數(shù)據(jù)庫:
DBCC CHECKDB --如果執(zhí)行完有錯誤用以下語句修復(fù)
--i.要修復(fù)數(shù)據(jù)庫必需將數(shù)據(jù)庫改為單用戶模式:
Exce sp_dboption '數(shù)據(jù)庫名稱','single user','true'---('false'恢復(fù)多用戶)
--j.執(zhí)行以下語句修復(fù)數(shù)據(jù)庫:
DBCC CHECKDB('數(shù)據(jù)庫名稱',REPAIR_ALLOW_DATA_LOSS)
REPAIR_ALLOW_DATA_LOSS:是比較高級的修復(fù)方式
REPAIR_FAST:是簡單快速的修復(fù)方式
/*
【編輯推薦】