用SQLServer的attach功能出现错误及解决方法
作者:[网上资料 ]
今天用SQL Server 2008的attach功能附加一个数据库,出了点问题,提示的错误是:
Unable to open physical file "D:\Documents\Dalt\XXXX.mdf"Operating system error 5: "5(error not found)" (Microsoft SQL Server: Error 5120)".
记得以前做过类似的操作没有出现什么问题的,不知道为什么会这样,没办法在网上找解决方法,
http://social.msdn.microsoft.com/Forums/en/sqldatabaseengine/thread/9e563890-e35f-4524-82b9-3cca08fec5ed
msdn论坛里说需要给.mdf,.ldf文件添加一个用户权限,运行下面的语句查找这个权限的名称
1 declare @sqlser varchar(20) 2 EXEC master..xp_regread @rootkey='HKEY_LOCAL_MACHINE', @key='SYSTEM\CurrentControlSet\Services\MSSQLSERVER', 3 @value_name='objectname', @value=@sqlser OUTPUT 4 PRINT 'Account Starting SQL Server Service:' +convert(varchar(30),@sqlser)
在我的机器上得到的结果是:Account Starting SQL Server Service:LocalSystem,然后右击包含.mdf,.ldf文件的文件夹,切换到Security界面,添加LocalSystem用户。在这里我始终找不到这个用户
不过这里有一些用户如:User(PRCHAZ01210\User),Administrator(PRCHAZ01210\User),我给后者添加了Full control权限,再尝试attach, 没想到还成功了,也不知道上面的那个语句查出来的什么信息,等有时间再看看。
|
Unable to open physical file "D:\Documents\Dalt\XXXX.mdf"Operating system error 5: "5(error not found)" (Microsoft SQL Server: Error 5120)".
记得以前做过类似的操作没有出现什么问题的,不知道为什么会这样,没办法在网上找解决方法,
http://social.msdn.microsoft.com/Forums/en/sqldatabaseengine/thread/9e563890-e35f-4524-82b9-3cca08fec5ed
msdn论坛里说需要给.mdf,.ldf文件添加一个用户权限,运行下面的语句查找这个权限的名称
1 declare @sqlser varchar(20) 2 EXEC master..xp_regread @rootkey='HKEY_LOCAL_MACHINE', @key='SYSTEM\CurrentControlSet\Services\MSSQLSERVER', 3 @value_name='objectname', @value=@sqlser OUTPUT 4 PRINT 'Account Starting SQL Server Service:' +convert(varchar(30),@sqlser)
在我的机器上得到的结果是:Account Starting SQL Server Service:LocalSystem,然后右击包含.mdf,.ldf文件的文件夹,切换到Security界面,添加LocalSystem用户。在这里我始终找不到这个用户
不过这里有一些用户如:User(PRCHAZ01210\User),Administrator(PRCHAZ01210\User),我给后者添加了Full control权限,再尝试attach, 没想到还成功了,也不知道上面的那个语句查出来的什么信息,等有时间再看看。
|