SQL Server日志恢復(fù)還原數(shù)據(jù)的操作流程
SQL Server日志恢復(fù)還原數(shù)據(jù)
##red##
通過日志還原,首先要注意的是:
1、在數(shù)據(jù)庫更新和刪除之前有一個(gè)完整的備份。
2、在更新和刪除之后,做一個(gè)日志備份。
3、該日志只能用于還原數(shù)據(jù)庫備份和日志備份時(shí)間之間的數(shù)據(jù)。
下面看整個(gè)數(shù)據(jù)庫備份和恢復(fù)的操作流程:
創(chuàng)建一個(gè)數(shù)據(jù)庫并完整備份:
創(chuàng)建數(shù)據(jù)庫
新建一個(gè)數(shù)據(jù)庫TEST用來測試

創(chuàng)建表
-- 切換到 TEST 數(shù)據(jù)庫
USE TEST;
GO
-- 創(chuàng)建表
CREATE TABLE TestTable (
ID INT IDENTITY(1,1) PRIMARY KEY,
Name NVARCHAR(50),
CreatedDate DATETIME
);
GO
-- 插入測試數(shù)據(jù)
INSERT INTO TestTable (Name, CreatedDate)
VALUES
('Alice', GETDATE()),
('Bob', GETDATE()),
('Charlie', GETDATE()),
('David', GETDATE()),
('Eva', GETDATE()),
('Frank', GETDATE()),
('Grace', GETDATE()),
('Hannah', GETDATE()),
('Isaac', GETDATE()),
('Judy', GETDATE());
GO
記錄本次操作時(shí)間2024-07-31 17:29:19
對數(shù)據(jù)庫進(jìn)行備份
右鍵數(shù)據(jù)庫(TEST)-任務(wù)-備份:

先把默認(rèn)的備份路徑刪除,要不然后面會出錯(cuò),然后點(diǎn)添加:

選擇文件位置

選擇文件位置以及備份文件名

點(diǎn)擊 確認(rèn) 進(jìn)行備份

備份完成

記錄本次操作時(shí)間2024-07-31 17:30:50
模擬故障并恢復(fù)數(shù)據(jù)
誤刪除操作
假設(shè)我們誤操作刪除了這個(gè)表,注意刪除表的時(shí)間,后面會用到:
DROP TABLE TEST.dbo.TestTable;
記錄本次操作時(shí)間2024-07-31 17:31:22
備份日志文件
BACKUP LOG TEST TO DISK='D:\TEST_log.bak' WITH FORMAT GO
記錄本次操作時(shí)間2024-07-31 17:32:05

還原數(shù)據(jù)庫
在 SQL Server Management Studio 中,右鍵單擊要還原的數(shù)據(jù)庫(Test),選擇“任務(wù)” -> “還原” -> “數(shù)據(jù)庫”

在“選項(xiàng)”標(biāo)簽中,勾選“關(guān)閉現(xiàn)有連接到目標(biāo)數(shù)據(jù)庫”,選擇 之前的全量備份 和 剛剛備份的事務(wù)日志

在常規(guī)里,選擇一個(gè)還原到的具體時(shí)間點(diǎn)。

這里我們的誤刪操作發(fā)生在:2024-07-31 17:30:50
因此,我們選擇還原到這個(gè)時(shí)間的前一刻,我選擇 2024-07-31 17:31:00
點(diǎn)擊“確定”開始還原

還原成功

檢驗(yàn)恢復(fù)結(jié)果
還原完成后,我們需要驗(yàn)證數(shù)據(jù)是否已經(jīng)被成功恢復(fù)。

恢復(fù)數(shù)據(jù)庫可讀寫
從剛剛的截圖上我們看到,雖然數(shù)據(jù)被恢復(fù)了,但是因?yàn)槭褂昧巳罩臼聞?wù),所以TEST數(shù)據(jù)庫變成了備用/只讀狀態(tài)。當(dāng)前狀態(tài)下,數(shù)據(jù)庫是無法被寫入的,我們需要解除這種狀態(tài)。
-- 切換到 master 數(shù)據(jù)庫 USE master; -- 將數(shù)據(jù)庫設(shè)置為讀寫模式 ALTER DATABASE TEST SET READ_WRITE;
刷新數(shù)據(jù)庫,看到數(shù)據(jù)庫Test已經(jīng)變?yōu)榭蓪懭氲恼顟B(tài)了

以上就是SQL Server日志恢復(fù)還原數(shù)據(jù)的操作流程的詳細(xì)內(nèi)容,更多關(guān)于SQL Server日志恢復(fù)還原數(shù)據(jù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
談?wù)剆qlserver自定義函數(shù)與存儲過程的區(qū)別
這篇文章主要介紹了談?wù)剆qlserver自定義函數(shù)與存儲過程的區(qū)別,需要的朋友可以參考下2014-09-09
SQL Server 遠(yuǎn)程更新目標(biāo)表數(shù)據(jù)的存儲過程
這篇文章主要介紹了SQL Server 遠(yuǎn)程更新目標(biāo)表數(shù)據(jù)的存儲過程,適用于更新列名一致,主鍵為Int類型,具體實(shí)例代碼大家參考下本文2018-05-05
如何得到數(shù)據(jù)庫中所有表名 表字段及字段中文描述
最近做一個(gè)項(xiàng)目,客戶希望可以自己選擇想要查看的列表,這樣就不好辦了,選擇列表的名字他們也想自定義,沒辦法這就需要查看數(shù)據(jù)表中字段,中文說明,默認(rèn)標(biāo)志了2011-12-12
如何使用 SQL Server Management Studio還原 
本篇文章都將教你如何通過SQL Server Management Studio(SSMS) 進(jìn)行.bak文件的完整還原,下面將以最常見的 SSMS 圖形界面操作為例,詳細(xì)說明整個(gè)恢復(fù)流程,以及常見問題的解決辦法,感興趣的朋友一起看看吧2026-01-01
用SQL腳本讀取Excel中的sheet數(shù)量及名稱的方法代碼
這篇文章介紹了用SQL腳本讀取Excel中的sheet數(shù)量及名稱的方法代碼,有需要的朋友可以參考一下2013-09-09
解決在window下執(zhí)行SQLSERVER定時(shí)備份的問題
這篇文章主要介紹了在window下執(zhí)行SQLSERVER的定時(shí)備份,文末給大家介紹了windows任務(wù)計(jì)劃定時(shí)備份sqlserver數(shù)據(jù)庫的相關(guān)知識,使用windows的任務(wù)計(jì)劃新建一個(gè)sqlserver數(shù)據(jù)庫的定時(shí)備份任務(wù),需要的朋友可以參考下2022-01-01
SQL?Server數(shù)據(jù)庫表的創(chuàng)建與管理操作大全
這篇文章主要給大家介紹了關(guān)于SQL?Server數(shù)據(jù)庫表的創(chuàng)建與管理操作的相關(guān)資料,?SQL?Server是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它可以幫助用戶創(chuàng)建、管理和查詢數(shù)據(jù),文中介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01

