SQL Server 2012 創建數據庫快照


 

不是所有的MSSQL數據庫版本都支持數據庫快照,只有Enterprise版本的才支持。

在其他版本上,以Business Intelligence Edition版本為例,創建快照時,會報如下錯誤

消息 1844,級別 16,狀態 1,第 1 行
Business Intelligence Edition 不支持 Database Snapshot。

如圖

 

在Enterprise版本的數據庫下,運行如下語句來創建快照會報錯,錯誤信息為

消息 5127,級別 16,狀態 1,第 1 行
必須指定用於創建數據庫快照的所有文件。缺少文件“testtt_Data”。

create database testttSnapShot on
(
    name=N'testtt',filename='F:\testDataBase\testttSnapShot.ss'
)
as snapshot of testtt

這說明,創建快照時 name=N'testtt'不是隨便寫的。必須指定和源數據庫里面的數據文件相同的邏輯名稱。原來的testtt數據庫的主數據文件的邏輯名稱應該是testtt_Data,而不是testtt。

如果不確定主數據文件的邏輯名稱,可以運行select * from testtt.sys.database_files where type=0 確認一下,也可以用圖形界面

 

所以,正確的寫法應該是

create database testttSnapShot on
(    
name
=N'testtt_Data',filename='F:\testDataBase\testttSnapShot.ss' ) as snapshot of testtt

這里還需要注意,如果路徑不存在,會報錯

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM