最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

掌握SQL Server數(shù)據(jù)庫快照的工作原理第1/2頁

 更新時(shí)間:2008年01月02日 19:21:37   作者:  
掌握SQL Server數(shù)據(jù)庫快照的工作原理

數(shù)據(jù)庫快照是怎樣工作的? 



可以使用典型的數(shù)據(jù)庫命令CREATE DATABASE語句來生成一個(gè)數(shù)據(jù)庫快照,在聲明中有一個(gè)源數(shù)據(jù)庫快照的附加說明。當(dāng)快照被建立時(shí),同時(shí)生成一個(gè)稀疏文件。這個(gè)文件(只能使用在NTFS卷中)在初始化的時(shí)候并沒有磁盤空間分配給它——盡管你可能在WINDOWS資源管理器中看到了文件的大小,它會(huì)看上去與原始的源數(shù)據(jù)庫文件的大小相同。對磁盤來說其實(shí)這個(gè)文件的大小接近于零。 



數(shù)據(jù)庫快照在初始化時(shí)讀的數(shù)據(jù)文件是來自于源數(shù)據(jù)庫的。當(dāng)源數(shù)據(jù)庫的數(shù)據(jù)發(fā)生變化時(shí),數(shù)據(jù)引擎就會(huì)將原始數(shù)據(jù)從源數(shù)據(jù)庫拷貝到快照數(shù)據(jù)庫中。這個(gè)技術(shù)確??煺諗?shù)據(jù)庫只反映快照被執(zhí)行時(shí)數(shù)據(jù)的狀態(tài)。當(dāng)SELECT命令被用來發(fā)布反對數(shù)據(jù)庫快照時(shí),不管數(shù)據(jù)頁的讀取是否被定位在源數(shù)據(jù)庫數(shù)據(jù)文件中還是在快照數(shù)據(jù)庫數(shù)據(jù)文件中都是沒有鎖被發(fā)布的。因?yàn)樵谥蛔x數(shù)據(jù)庫快照中是沒有鎖被發(fā)布,數(shù)據(jù)庫快照對于報(bào)表解決方案是一個(gè)重要的解決方案。 


一個(gè)快照的實(shí)例 



現(xiàn)在,讓我們來看看數(shù)據(jù)庫快照在SQL Server 2005中是如何工作的。為此,首先我需要一個(gè)源數(shù)據(jù)庫作為快照的來源。下面的腳本將創(chuàng)建一個(gè)源數(shù)據(jù)庫: 


USE master 
GO 
IF EXISTS(SELECT name from 
sysdatabases where [name] = 'SourceDatabase') 
DROP DATABASE SourceDatabase 
GO 
CREATE DATABASE SourceDatabaseON PRIMARY 

NAME = SourceDatabase_Data, 
FILENAME = 'C:SQLServerSourceDatabase_Data.mdf' 
) LOG ON 

NAME = SourceDatabase_Log, 
FILENAME = 'C:SQLServerSourceDatabase_Log.ldf' 

GO






注意這里產(chǎn)品區(qū)域的大小。我定義它的大小為CHAR(150)來強(qiáng)調(diào)數(shù)據(jù)文件的增長級數(shù),這樣在我接下來的實(shí)例中將更容易解釋清楚快照是如何工作的。 



現(xiàn)在既然我已經(jīng)有了一個(gè)源數(shù)據(jù)庫,現(xiàn)在我裝載一些數(shù)據(jù)來擴(kuò)展數(shù)據(jù)文件的大小位。如此,使用上面的腳本來創(chuàng)建銷售歷史表。 


USE SourceDatabase 
  GO 
  IF OBJECT_ID('SalesHistory')>0 DROP 
TABLE SalesHistory 
  GO 
  CREATE TABLE SalesHistory 
  (SaleID INT IDENTITY(1,1), 
  Product CHAR(150), SaleDate DATETIME, 
  SalePrice MONEY) 
  DECLARE @i INT 
  SET @i = 1 
  WHILE (@i <=10000) 
  BEGIN INSERT INTO SalesHistory 
  (Product, SaleDate, SalePrice) 
  VALUES ('Computer', DATEADD(mm, @i, '3/11/1919'), 
  DATEPART(ms, GETDATE()) + (@i + 57) ) 
  INSERT INTO SalesHistory 
  (Product, SaleDate, SalePrice) 
  VALUES ('BigScreen', DATEADD(mm, @i, '3/11/1927'), 
  DATEPART(ms, GETDATE()) + (@i + 13) ) 
  INSERT INTO SalesHistory 
  (Product, SaleDate, SalePrice) 
  VALUES ('PoolTable', DATEADD(mm, @i, '3/11/1908'), 
  DATEPART(ms, GETDATE()) + (@i + 29) ) 
  SET @i = @i + 1 
  END 
  GO 

相關(guān)文章

  • 關(guān)于關(guān)系數(shù)據(jù)庫如何快速查詢表的記錄數(shù)詳解

    關(guān)于關(guān)系數(shù)據(jù)庫如何快速查詢表的記錄數(shù)詳解

    這篇文章主要給大家介紹了關(guān)于關(guān)系數(shù)據(jù)庫如何快速查詢表的記錄數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用關(guān)系數(shù)據(jù)庫具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 數(shù)據(jù)庫查詢中遭遇特殊字符導(dǎo)致問題的解決方法

    數(shù)據(jù)庫查詢中遭遇特殊字符導(dǎo)致問題的解決方法

    數(shù)據(jù)庫查詢中遭遇特殊字符導(dǎo)致問題的解決方法,我們提供的是asp的,但其它的數(shù)據(jù)庫與語言下的解決方法也大同小異。
    2007-12-12
  • 安裝navicat最新詳細(xì)流程

    安裝navicat最新詳細(xì)流程

    Navicat是一款獨(dú)立的數(shù)據(jù)庫管理工具,支持多種數(shù)據(jù)庫管理系統(tǒng),包括MySQL、MariaDB、Oracle、PostgreSQL、SQLite等,下面這篇文章主要給大家介紹了關(guān)于安裝navicat最新詳細(xì)流程,需要的朋友可以參考下
    2023-06-06
  • Windows10用Navicat?定時(shí)備份報(bào)錯(cuò)80070057的問題解析

    Windows10用Navicat?定時(shí)備份報(bào)錯(cuò)80070057的問題解析

    這篇文章主要介紹了Windows10用Navicat?定時(shí)備份報(bào)錯(cuò)80070057的問題,本文通過圖文并茂的形式給大家分享問題所在原因及解決方案,需要的朋友可以參考下
    2023-10-10
  • sql注入教程之類型以及提交注入

    sql注入教程之類型以及提交注入

    所謂SQL注入,就是通過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字符串,這篇文章主要給大家介紹了關(guān)于sql注入教程之類型以及提交注入的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • 一篇文章教會(huì)你使用gs_restore導(dǎo)入數(shù)據(jù)

    一篇文章教會(huì)你使用gs_restore導(dǎo)入數(shù)據(jù)

    gs_restore是GaussDB(DWS)提供的針對gs_dump導(dǎo)出數(shù)據(jù)的導(dǎo)入工具,下面這篇文章主要給大家介紹了關(guān)于如何通過一篇文章教會(huì)你使用gs_restore導(dǎo)入數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • 使用DataGrip連接Hive的詳細(xì)步驟

    使用DataGrip連接Hive的詳細(xì)步驟

    這篇文章主要介紹了DataGrip連接Hive的詳細(xì)圖文教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • SQL中IS NOT NULL與!=NULL的區(qū)別

    SQL中IS NOT NULL與!=NULL的區(qū)別

    這篇文章主要介紹了SQL中IS NOT NULL與!=NULL的區(qū)別,本文詳細(xì)訴說了它們的區(qū)別,以及推薦使用方法,需要的朋友可以參考下
    2015-06-06
  • Navicat for SQLite安裝使用教程 附安裝包

    Navicat for SQLite安裝使用教程 附安裝包

    這篇文章主要介紹了Navicat for SQLite安裝教程 附安裝包,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-07-07
  • 一條慢SQL導(dǎo)致購物車服務(wù)無法使用的解決方案

    一條慢SQL導(dǎo)致購物車服務(wù)無法使用的解決方案

    今天小編就為大家分享一篇關(guān)于一條慢SQL導(dǎo)致購物車服務(wù)無法使用的解決方案,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-12-12

最新評論

兴国县| 东乡| 海口市| 吴堡县| 比如县| 咸丰县| 湖南省| 上蔡县| 醴陵市| 通州市| 分宜县| 乐清市| 全南县| 宝丰县| 通辽市| 奈曼旗| 饶阳县| 临汾市| 横山县| 马龙县| 集贤县| 临沧市| 乐亭县| 固安县| 榆树市| 兴山县| 体育| 盐池县| 长岭县| 呼伦贝尔市| 班玛县| 安顺市| 兴业县| 阿克陶县| 吴旗县| 台北市| 怀集县| 务川| 陕西省| 珠海市| 福安市|