欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

拯救你的數(shù)據(jù) 通過日志恢復(fù)MSSQL數(shù)據(jù)

 更新時(shí)間:2016年05月24日 11:40:33   作者:zping  
這篇文章主要為大家詳細(xì)介紹了如何通過日志恢復(fù)MSSQL數(shù)據(jù)的具體步驟,感興趣的小伙伴們可以參考一下

這段時(shí)間看了關(guān)于在SQL server 中通過日志和時(shí)間點(diǎn)來恢復(fù)數(shù)據(jù)。也看了一些網(wǎng)上的例子,看如何通過日志來恢復(fù)數(shù)據(jù)。
前提條件:
數(shù)據(jù)庫的故障恢復(fù)改為非簡單模式,去掉自動(dòng)關(guān)閉和自動(dòng)收縮兩個(gè)選項(xiàng)    
如果是簡單模式:類似下面的語句操作數(shù)據(jù)就不會(huì)記錄到日志中:  select * into t from [表名]
這時(shí)為保證數(shù)據(jù)的完整要將數(shù)據(jù)庫的恢復(fù)模式改成“完整”
測試環(huán)境:   

1、建立數(shù)據(jù)庫和測試表        

create database zp

create table [zping.com](
 id int,
 name varchar(20)
)

2、插入測試數(shù)據(jù)

insert into [zping.com](id,name)
values(1,'zping.com1')
insert into [zping.com](id,name)
values(2,'zping.com2')
insert into [zping.com](id,name)
values(3,'zping.com3')
insert into [zping.com](id,name)
values(4,'zping.com4')

備份數(shù)據(jù)庫,可以通過sql server的可視化操作,下面是生成的代碼:
[code]BACKUP DATABASE [zp] TO  DISK = N'C:\k.bak' WITH NOFORMAT, NOINIT, 
NAME = N'zp-完整 數(shù)據(jù)庫 備份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
GO[code]

查看數(shù)據(jù):

注意:這時(shí)我們做一個(gè)完整備份

這時(shí)可能一不小心刪除了一些數(shù)據(jù)。我們模擬一下:(假定刪除了1,2的數(shù)據(jù))

deletefrom[zping.com]where(id=1orid=2)

注意:要記住大體的刪除時(shí)間

這時(shí)發(fā)現(xiàn)刪除錯(cuò)誤了,怎么把數(shù)據(jù)找回來啊。方法有兩個(gè):

1、通過Log Explorer 查找進(jìn)行恢復(fù)數(shù)據(jù)(我網(wǎng)站有此工具)

2、另一種方法通過恢復(fù)日志(指定時(shí)間點(diǎn)恢復(fù))來恢復(fù)數(shù)據(jù)。

說明:第一個(gè)方法可以在線操作。

第二個(gè)方法必須停止數(shù)據(jù)庫或者再另一個(gè)數(shù)據(jù)庫恢復(fù)(前提是必須有一個(gè)完全備份和日志備份)

這里我們來討論第二中方法指定時(shí)間點(diǎn)恢復(fù):

1、這時(shí)對數(shù)據(jù)庫事務(wù)日志做備份(注意,如果沒做個(gè)數(shù)據(jù)庫完整備份,是不能做事務(wù)日志備份的)

這時(shí)新建一個(gè)數(shù)據(jù)庫zp(將以前的數(shù)據(jù)庫改名),恢復(fù)數(shù)據(jù)庫

這時(shí)我們看到,有兩個(gè)還原的數(shù)據(jù)庫備份,因?yàn)槲覍p數(shù)據(jù)庫備份了兩次,兩次的備份的數(shù)據(jù)文件都一樣。這里我們選擇最近時(shí)間的備份。

默認(rèn)在數(shù)據(jù)庫的設(shè)置如下:是追加到備份集里,所以會(huì)有兩個(gè)備份,如下圖:

同時(shí),在”選項(xiàng)“里設(shè)置”不回滾“事務(wù)。

注意:通過事務(wù)日志還原數(shù)據(jù)庫,必須選擇"不回滾"事務(wù)。

確定后,出現(xiàn)下面情況:

這時(shí)發(fā)現(xiàn),數(shù)據(jù)庫一直是”正在還原“,這時(shí)還原數(shù)據(jù)庫事務(wù)日志,

1、“常規(guī)”里選擇時(shí)間,(剛刪除的時(shí)間)

2、“選項(xiàng)”里將恢復(fù)狀態(tài)設(shè)置為”回滾未提交“事務(wù)

確定后,查詢數(shù)據(jù)庫,發(fā)現(xiàn)數(shù)據(jù)回來了。

總結(jié):

1、這是一般大型網(wǎng)站數(shù)據(jù)安全的一個(gè)辦法,因?yàn)閿?shù)據(jù)庫比較大(可能有幾百G)數(shù)據(jù),做一次完整備份時(shí)間很長,而且影響數(shù)據(jù)庫服務(wù)器的性能,為保證數(shù)據(jù)安全,大多采用完整備份+事務(wù)日志備份來保證數(shù)據(jù)安全。例如:一天做一次或者2天做一次完整備份,幾個(gè)小時(shí)內(nèi)做一次日志備份。(當(dāng)然可以用寫一個(gè)job來實(shí)現(xiàn))

2、如SQL server 2005里的鏡像就是采用的這種事務(wù)日志同步的方法保證數(shù)據(jù)的同步。

3、如果恢復(fù)的日志數(shù)據(jù)出現(xiàn)”LSN“太早和太晚說明了事務(wù)日志間的不連續(xù)。這時(shí)要注意備份的時(shí)間和順序。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。

相關(guān)文章

  • 淺析SQL Server中包含事務(wù)的存儲(chǔ)過程

    淺析SQL Server中包含事務(wù)的存儲(chǔ)過程

    數(shù)據(jù)庫事務(wù)(Database Transaction) ,是指作為單個(gè)邏輯工作單元執(zhí)行的一系列操作,要么完整地執(zhí)行,要么完全地不執(zhí)行。那么在存儲(chǔ)過程里添加事務(wù),則可以保證該事務(wù)里的所有sql代碼要么完全執(zhí)行要么完全不執(zhí)行。
    2014-08-08
  • sql中返回參數(shù)的值

    sql中返回參數(shù)的值

    sql中返回參數(shù)的值...
    2007-03-03
  • SQL Server 交叉表查詢 case

    SQL Server 交叉表查詢 case

    今天下午忙于將access數(shù)據(jù)庫中的交叉表轉(zhuǎn)到SQL server數(shù)據(jù)庫中,在SQL server中,不支持transfrom方法,查找相關(guān)資料,找到使用case方法進(jìn)行轉(zhuǎn)換
    2011-12-12
  • PL/SQL Developer過期的兩種解決方法

    PL/SQL Developer過期的兩種解決方法

    登陸PL/SQL Developer,會(huì)出現(xiàn)PL/SQL Developer要到期了,或者已經(jīng)到期了。遇到這種情況怎么處理呢,接下來小編給大家?guī)砹藀lsql developer 過期的解決方法,感興趣的朋友一起看看吧
    2017-10-10
  • 每個(gè)分類取最新的幾條的SQL實(shí)現(xiàn)代碼

    每個(gè)分類取最新的幾條的SQL實(shí)現(xiàn)代碼

    每個(gè)分類取最新的幾條的SQL實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2012-08-08
  • sqlserver 局部變量的使用

    sqlserver 局部變量的使用

    在SQL中我們或許會(huì)使用到局部變量的問題,下面給出微軟的兩個(gè)小例子
    2010-06-06
  • SQL Server誤區(qū)30日談 第6天 有關(guān)NULL位圖的三個(gè)誤區(qū)

    SQL Server誤區(qū)30日談 第6天 有關(guān)NULL位圖的三個(gè)誤區(qū)

    NULL位圖是為了確定行中的哪一列是NULL值,哪一列不是。這樣做的目的是當(dāng)Select語句后包含存在NULL值的列時(shí),避免了存儲(chǔ)引擎去讀所有的行來查看是否是NULL,從而提升了性能
    2013-01-01
  • MySql 安裝時(shí)的1045錯(cuò)誤

    MySql 安裝時(shí)的1045錯(cuò)誤

    MySql安裝到最后一步的時(shí)候,出現(xiàn)1045的錯(cuò)誤有兩種解決辦法。
    2009-07-07
  • 使用SQL語句創(chuàng)建數(shù)據(jù)庫與創(chuàng)建表操作指南

    使用SQL語句創(chuàng)建數(shù)據(jù)庫與創(chuàng)建表操作指南

    這篇文章主要給大家介紹了關(guān)于使用SQL語句創(chuàng)建數(shù)據(jù)庫與創(chuàng)建表操作的相關(guān)資料,創(chuàng)建數(shù)據(jù)庫是數(shù)據(jù)庫管理的第一步,而SQL語句是創(chuàng)建數(shù)據(jù)庫的基本工具,需要的朋友可以參考下
    2023-08-08
  • SQL Server UPDATE語句的用法詳解

    SQL Server UPDATE語句的用法詳解

    SQL Server中的數(shù)據(jù)改動(dòng)是免不了的,使用UPDATE語句就可以實(shí)現(xiàn)我們對數(shù)據(jù)庫數(shù)據(jù)的更新修改操作,下面就讓我們來了解一下UPDATE語句的用法
    2014-08-08

最新評論