创建数据库文件权限

时间:2017-07-19 08:21:59

标签: sql-server

我使用以下查询来创建数据库。

USE master;  
GO  
CREATE DATABASE Apps  
ON   
( NAME = App_dat,  
    FILENAME = 'C:\Temp\Appdata.mdf',  
    SIZE = 10,  
    MAXSIZE = 50,  
    FILEGROWTH = 5 )  
LOG ON  
( NAME = App_log,  
    FILENAME = 'C:\Temp\Applog.ldf',  
    SIZE = 5MB,  
    MAXSIZE = 25MB,  
    FILEGROWTH = 5MB ) ;  
   GO 

文件已成功创建。但是,我在这里遇到的问题是.MDF和.LDF文件文件权限设置不正确。当我右键点击.MDF / .LDF - >属性 - >安全性,它显示

  

"您必须具有读取权限才能查看此对象的属性"。

如何在“创建数据库命令”本身或任何其他命令中设置文件安全权限。

使用上面的代码也可以在您的机器中重现此问题。如果有任何解决方案,请尝试告诉我。

1 个答案:

答案 0 :(得分:0)

此行为是设计使然。 SQL Server将文件权限设置为对服务帐户的完全控制,因为只有数据库引擎需要访问其中的文件和数据。

不清楚为什么需要直接访问这些文件。您可以使用Windows资源管理器,icacls命令行工具或Powershell中的Set-Acl更改权限。