Sql server SQL Server 2008数据库复制-文件权限

Sql server SQL Server 2008数据库复制-文件权限,sql-server,sql-server-2008,windows-vista,64-bit,administration,Sql Server,Sql Server 2008,Windows Vista,64 Bit,Administration,对于Vista 64位上的SQL Server 2008 Developer Edition: 我尝试使用Vista管理员帐户使用attach/detach方法复制数据库,但由于文件权限错误,复制失败,因此我向用户告知sql services正在以写入和修改目录的方式运行。复印件坏了。然后我给了它完全的控制权。复印件起作用了 这有意义吗 如果我撤销用户的完全控制权,这会导致问题吗 奇怪的是,在一个现有的工作数据库中,文件位于不同的目录中,对该目录和数据库文件没有特殊权限,那么为什么副本需要完全控

对于Vista 64位上的SQL Server 2008 Developer Edition:

我尝试使用Vista管理员帐户使用attach/detach方法复制数据库,但由于文件权限错误,复制失败,因此我向用户告知sql services正在以写入和修改目录的方式运行。复印件坏了。然后我给了它完全的控制权。复印件起作用了

这有意义吗

如果我撤销用户的完全控制权,这会导致问题吗


奇怪的是,在一个现有的工作数据库中,文件位于不同的目录中,对该目录和数据库文件没有特殊权限,那么为什么副本需要完全控制呢?

分离数据库时,MDF/LDF文件可能设置了比预期更严格的PERM,类似于执行分离的主体的独占-可能是执行分离的用户的SQL Server服务帐户或域帐户。在过去,我必须手动为其他用户在“文件属性”>“安全性”选项卡上添加回权限,否则这些文件就好像被锁定一样。另见

此外:


(谢谢)

如果您正在处理的服务器和/或数据不需要设置这些限制性权限,您可以在SQL server中设置一个启动标志,该标志将覆盖此功能。我理解微软的意图——他们认为,如果你拆下一个数据库,他们不希望任何人拿走这个文件;然而,我认为阻止一个好的黑客这么做说起来容易做起来难,加密数据库是保护数据的最好方法

无论如何,有一个“Trace Flag 1802”,它的名字很奇怪,因为它与跟踪无关。如果要保持此行为,您需要将其添加到SQL Configuration Manager中的SQL启动中

我自己也有同样的问题,在StackExchange中找到了答案: