按時間點還原SQL數(shù)據(jù)庫的方法
還原SQL數(shù)據(jù)庫是每個DBA都需要掌握的,下面為您介紹的方法是按時間點還原SQL數(shù)據(jù)庫的,希望對您學習還原SQL數(shù)據(jù)庫方面能夠有所幫助。
特別提醒:在操作前記得把數(shù)據(jù)庫備份一下。
注:我的最后備份文件是20091029的15點,剛好差距是2天時間。
第一步:備份日志文件,以備還原使用,代碼如下:
BACKUP LOG 數(shù)據(jù)庫名 TO DISK='備份文件存放路徑(如:D:\test.log)' WITH INIT
第二步:恢復備份的最后一個數(shù)據(jù)文件備份,記得寫上WITH NORECOVERY,如果是在管理工具中操作還原數(shù)據(jù)庫的話,請在[還原數(shù)據(jù)庫]->[選項]->[恢復完成狀態(tài)]下選擇[是數(shù)據(jù)庫不再運行,但能還原其它事務日志]選項,再確定,還原時數(shù)據(jù)庫可以重命名,代碼操作如下:
RESTORE DATABASE test_bak from disk='F:\databak\test_db_200910291500.BAK' WITH NORECOVERY
第三步:根據(jù)日志文件指定恢復的時間點數(shù)據(jù),如下:
RESTORE LOG sms_01_bak FROM disk='f:\sms_01.logs' WITH RECOVERY,STOPAT='10/31/2009 15:40'
運行完成后,把數(shù)據(jù)庫設置成可運行狀態(tài),查詢數(shù)據(jù),OK,全部都在,高興啊~~~~~~
如果感覺日志文件太大了,可以清空日志信息,記得把剛才備份的日志文件保存好,
清空日志:
DUMP TRANSACTION sms_01 WITH NO_LOG
【編輯推薦】

















