国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

從日志中恢復SQL Server數據庫到時間點

2024-08-31 00:48:08
字體:
來源:轉載
供稿:網友
菜鳥學堂:

author:david euler
date: 2004/10/16
email:[email protected]

有任何問題,請與我聯系:)



         db2中可以使得數據庫回復到指定的時間點,sql server數據庫的recovery model為full 或者bulk copy的時候,是可以從日志來恢復數據庫的。實際上日志中記錄的一條一條的transact sql語句,恢復數據庫的時候會redo這些sql語句。
  
前提條件:mybbs是數據庫test中的一個表,

          數據庫test的recovery model為full,auto close,auto shrink兩個選項未選中。

          數據庫test的data files和log files均為默認的自動增長狀態。



a:2004/10/13,16:00進行數據庫備份,backup database test to disk='d:/db/1600.bak' with init

b:2004/10/14,13:00對數據庫進行了update,delete等操作;

c:2004/10/15,18:00使用delete mybbs where id>300時,語句誤寫成delete mybbs,因而刪除了表mybbs中的所有數據。

 

現在在c點,c點對數據庫進行了誤操作,我們希望數據庫能夠恢復到c之前的狀態,比如恢復到10月15日17:59分的狀態。

要恢復數據庫b點,使用的是a點備分的數據庫1600.bak;而使用的日志備分是最新的備分1820.logs;因而進行如下操作:

 

--備分日志:

backup log test to disk='d:/1820.logs' with init

 

--恢復數據庫1600.bak,使用with norecovery參數:

restore database test from disk='d:/db/1640.bak' with norecovery

 

--使用日志恢復數據庫到10月15日17:59分:

restore log test
        from disk='d:/1820.logs' with recovery,stopat='10/15/2004 17:59'


 

上面的三條transact sql語句的對應過程:

      1.恢復數據庫到a點;

      2.執行a-b之間的log記錄,把數據庫恢復到b點.

 

 

       這樣就恢復數據庫到了指定的時間點。如果恢復不成功,可能的原因是:1.未使用正確的備分數據庫;2.數據庫選項選中了auto shrink.

 

 

 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海阳市| 勃利县| 桂东县| 泊头市| 靖宇县| 太仆寺旗| 页游| 海宁市| 中西区| 诸城市| 罗源县| 湘乡市| 康马县| 巴楚县| 峨眉山市| 海门市| 田林县| 德钦县| 吴堡县| 锡林浩特市| 大荔县| 乳山市| 河津市| 元阳县| 邵东县| 包头市| 甘谷县| 杭锦后旗| 仲巴县| 隆子县| 安塞县| 洱源县| 布拖县| 区。| 和顺县| 博湖县| 南部县| 长汀县| 沙田区| 荣成市| 玉门市|