CREATE FILE遇到操作系统错误5(无法检索此错误的文本.原因:15105)

Gib*_*boK 68 sql sql-server-express sql-server-2008

我有一个.mdfMS SQL EXPRESS文件夹中的数据库文件:

C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA
Run Code Online (Sandbox Code Playgroud)

我想将它附加到MS 2008 R2(MSSQL10_50.MSSQLSERVER),但使用Server Management Studio我收到以下错误:

CREATE FILE encountered operating system error 5(failed to retrieve text for this error. Reason: 15105) while attempting to open or create the physical file

你知道怎么解决吗?

Gib*_*boK 125

我能够解决运行MS SQL Management Studio作为ADMINISTRATOR的问题.

  • 现货 - 救生员. (4认同)
  • http://stackoverflow.com/users/2029904/user2029904的响应更不具有攻击性并解决了底层问题 - 实例帐户对数据库文件的访问不足. (3认同)

use*_*904 49

这是Windows权限问题.如果使用Windows身份验证连接到服务器,则该Windows用户需要该文件的权限.如果使用SQL Server身份验证连接到服务器,则SQL Server实例帐户(MSSQL $,例如MSSQL $ SQLEXPRESS)需要该文件的权限.建议以管理员身份登录的其他解决方案基本上完成了同样的事情(有一个大锤:).

如果数据库文件位于SQL Server的数据文件夹中,那么它应该从该文件夹继承SQL Server帐户的用户权限,以便SQL Server身份验证应该有效.我建议修复SQL Server实例的帐户对该文件夹的权限.如果数据文件位于其他位置且SQL Server帐户没有权限,则稍后您可能会遇到其他问题.同样,更好的解决方案是修复SS帐户权限.除非你总是以管理员身份登录...

  • 编辑数据文件夹的安全性属性,以包括对运行SQL Management Studio的用户的完全控制. (5认同)
  • 以管理员身份运行对我不起作用.当我在服务中检查SQL Server时,它在网络服务帐户下运行.我给该文件夹的网络服务权限,并创建数据库是成功的:) (4认同)

小智 8

开始->运行-> services.msc->滚动服务列表,直到找到 SQL Server->右键单击->属性->登录选项卡:

然后选择Local System Account并选中Allow service to interact with desktop复选框。

重新启动服务。

服务


小智 5

右键单击File mdf和ldf properties - > security - >完全权限