在我的实例上,我有一个名为SampleDB的数据库。我想在其上创建名为SampleSnap的快照。
-- Create a Snapshot on a Database
CREATE DATABASE SampleSnap ON
(
NAME = SampleDB, -- Logical File Name
FILENAME ='C:\Users\Eleonora\Desktop\SampleSnap.ss'
)
AS SNAPSHOT OF SampleDB;
GO
这给我一个错误
Directory lookup for the file "C:\Users\Eleonora\Desktop\SampleSnap.ss" failed error 5(Access is denied.).
我该怎么做才能解决此问题?
此外,我无法理解逻辑文件名的使用。它是什么以及如何正确指定它?
谢谢你的时间。
最佳答案
要创建快照,您必须是角色 sysadmin 的成员
其中 source_database_name 是源数据库, logical_file_name 是引用文件时在SQL Server中使用的逻辑名, os_file_name 是创建文件时操作系统使用的路径和文件名
阅读更多here
编辑-如果不是sysadmin权限。这是因为SQL Server服务帐户无权访问您的路径。
Edit2 如果要在C驱动器上-我创建了一个新文件夹C:\ Test
我完全控制了网络服务-不知道这是否必要
关于sql-server - 在MS SQL Server中创建数据库的快照,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51554505/