今天在Sqlserver上附加数据库的时候,始终失败。折腾了半天,终于搞定。
错误:
附加数据库 对于 服务器“JESSE9898-PC/SQLEXPRESS”失败。 (Microsoft.SqlServer.Smo)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1447.4+((KJ_RTM).100213-0103+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=附加数据库+Server&LinkId=20476
------------------------------
其他信息:
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
无法打开物理文件 "E:/works/database/XXX.mdf"。操作系统错误 5:"5(拒绝访问。)"。 (Microsoft SQL Server,错误: 5120)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.00.2531&EvtSrc=MSSQLServer&EvtID=5120&LinkId=20476
这个错误网上有大堆资料,解决办法就是不要使用windows 集成身份验证,使用sql server 身份验证sa登录附加解决.
但是我尝试用windows集成身份验证和Sa登录都没有附加数据库成功。最后发现明细信息提示是打不开MDF文件,拒绝访问,那么有可能是权限问题造成的,所以:
找到xxx.MDF与xxx_log.LDF文件,右键-属性-安全-在组或用户名处添加Authenticated Users-更改该组权限为完全权限,再次附加成功。