国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Sql Server - SQL中如何用快照,恢復被誤刪的數據?

SQL中如何用快照,恢復被誤刪的數據?

2021-04-21 01:43SQL數據庫開發丶平凡世界 Sql Server

數據庫快照是數據庫(稱為“源數據庫”)的只讀靜態視圖。在創建時,每個數據庫快照在事務上都與源數據庫一致。在創建數據庫快照時,源數據庫通常會有打開的事務。在快照可以使用之前,打開的事務會回滾以使數據庫快照在事

SQL中如何用快照,恢復被誤刪的數據?

什么是快照

 

數據庫快照是sql server 2005的一個新功能。MSDN上對它的定義是:

數據庫快照是數據庫(稱為“源數據庫”)的只讀靜態視圖。在創建時,每個數據庫快照在事務上都與源數據庫一致。在創建數據庫快照時,源數據庫通常會有打開的事務。在快照可以使用之前,打開的事務會回滾以使數據庫快照在事務上取得一致。

創建示例數據庫

 

  1. Use MASTER; 
  2. GO 
  3. CREATE DATABASE [Snapshot_Test] ON  PRIMARY 
  4. NAME = N'Snapshot_Test'--數據庫名稱 
  5. FILENAME = N'C:Program FilesMicrosoft SQL ServerMSSQL13.MSSQLSERVERMSSQLDATASnapshot_Test.mdf'
  6. --數據文件存放位置及數據文件名稱 
  7. SIZE = 3072KB , 
  8. --初始容量 
  9. MAXSIZE = UNLIMITED, 
  10. --最大容量 
  11. FILEGROWTH = 1024KB 
  12. --增長容量 
  13. LOG ON  
  14. NAME = N'Snapshot_Test_log'
  15. FILENAME = N'C:Program FilesMicrosoft SQL ServerMSSQL13.MSSQLSERVERMSSQLDATASnapshot_Test_log.ldf' , 
  16. SIZE = 504KB , 
  17. MAXSIZE = UNLIMITED, 
  18. FILEGROWTH = 10%) 
  19. COLLATE Chinese_PRC_CI_AS 
  20. GO 
  21. EXEC dbo.sp_dbcmptlevel @dbname=N'Snapshot_Test', @new_cmptlevel=130 
  22. GO 
  23. USE [Snapshot_Test] 
  24. GO 
  25. SET ANSI_NULLS ON 
  26. GO 
  27. SET QUOTED_IDENTIFIER ON 
  28. GO 
  29. CREATE TABLE [dbo].[test]( 
  30.  [id] [intNOT NULL
  31.  [name] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL 
  32. ON [PRIMARY
  33. GO 

(提示:可以左右滑動代碼)

也可以直接在SSMS里通過圖形化界面創建測試數據庫,這里不作贅述。在創建完數據庫之后,我們又新建了一個test表,我們先往里面插入測試數據。如下:

  1. use snapshot_Test; 
  2. go 
  3. INSERT INTO TEST (id,name)values(1,'hello 1'); 
  4. INSERT INTO TEST (id,name)values(2,'hello 2'); 
  5. INSERT INTO TEST (id,name)values(3,'hello 3'); 
  6. INSERT INTO TEST (id,name)values(4,'hello 4'); 
  7. GO 
  8. SELECT * FROM dbo.test; 

結果:

SQL中如何用快照,恢復被誤刪的數據?

然后我們馬上創建一個快照,創建快照使用的也是CREATE DATABASE語句,如下:

創建數據庫快照

 

執行下面的創建快照的語句

  1. create database Snapshot_Test_shot ON 
  2.    --是源數據庫的邏輯名 
  3.    Name = Snapshot_Test, 
  4.    --快照文件地址 
  5.    FileName = 'D:SqlDataSnapshot_Test_shot.ss' 
  6. AS SNAPSHOT OF Snapshot_Test; 

結果:

SQL中如何用快照,恢復被誤刪的數據?

現在的快照應該和我們新建的數據庫一摸一樣,可以通過sql server的對象瀏覽器查看數據庫快照,我們可以通過USE [快照庫名]來查詢數據庫快照

  1. use Snapshot_Test_shot; 
  2. go 
  3. SELECT * FROM dbo.test; 

結果:

SQL中如何用快照,恢復被誤刪的數據?

刪除測試庫數據

 

下面我們刪除測試數據庫中的數據

  1. use Snapshot_Test; 
  2. go 
  3. DELETE FROM dbo.test; 

結果:

SQL中如何用快照,恢復被誤刪的數據?

使用快照恢復數據庫

上面刪除是我們模擬誤刪了數據庫中的數據,但是幸好我們做了數據庫的快照。可以通過快照來還原剛才被誤刪的數據。

  1. --語法 
  2. RESTORE DATABASE DB_NAME 
  3. FROM DATABASE_SNAPSHOT = 'DB_SNAPSHOT_NAME' 

我們按照上面的語法進行恢復

  1. RESTORE DATABASE Snapshot_test 
  2. FROM DATABASE_SNAPSHOT = 'Snapshot_test_shot' 

執行完上面的恢復語句后,我們再查詢一下測試庫中的表

  1. use Snapshot_Test; 
  2. go 
  3. SELECT * FROM test 

結果:

SQL中如何用快照,恢復被誤刪的數據?

數據又回來,證明可以通過創建快照來恢復被誤刪的數據。

注意:

1、快照是只讀的,一旦創建不能修改

2、快照只能恢復數據庫,不能恢復指定的表

3、為防止誤刪除,必須在數據插入或更新到數據庫之后再創建快照,否則在插入或更新之前創建快照,插入或更新的數據被刪除是無法恢復的。

4、快照一般與定時任務一起使用,可以定時創建不同的快照防止數據丟失。

刪除數據庫快照

 

和刪除數據庫語法一樣

  1. DROP DATABASE Snapshot_Test_shot 

結果:

SQL中如何用快照,恢復被誤刪的數據?

數據庫快照下面沒有任何快照了,說明已經被刪除。

應用場景

在MSDN中數據庫快照的典型應用是

1) 維護歷史數據以生成報表。

2) 使用為了實現可用性目標而維護的鏡像數據庫來卸載報表。

3) 使數據免受管理失誤所帶來的影響。

4) 使數據免受用戶失誤所帶來的影響。

原文地址:https://mp.weixin.qq.com/s/YU0tbT-uP5vUxN50A4ooFA

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 嫩草视频免费在线观看 | 亚洲激情av| 一本大道伊人久久综合 | www.爱色av.com | 国产a自拍 | 国产精品成人国产乱一区 | 国产在线高清 | a∨色狠狠一区二区三区 | 欧美天堂| 久久综合久久久 | 日韩国产欧美视频 | 久久中文字幕一区二区三区 | 日韩成人在线播放 | 中文字幕最新在线 | 精品成人18 | 欧美国产精品一区二区三区 | www.44181com | 亚洲精品乱码8久久久久久日本 | 91精品国产综合久久久久久丝袜 | 日本欧美在线观看 | 亚洲午夜精品片久久www慈禧 | 中文字幕中文字幕 | 这里只有精品视频 | 97精品国产一区二区三区 | 日韩一本| 色视频在线播放 | 欧美日韩不卡 | 久久久久久亚洲 | 日日爽 | av免费一区二区 | 中文字幕国产一区 | 寡妇性视频免费高清播放器 | 成人av在线网 | 欧美黄色精品 | 视频一区二区国产 | 亚洲精品久久久久久下一站 | 在线免费观看黄 | 精品久久久久国产 | 欧美一区二区三区在线观看视频 | 亚洲视频在线免费观看 | 国产精品美女久久久久高潮 |