任何人都可以帮助我,我正在尝试备份位于localhost \ SQLEXPRESS上的数据库,但我一直收到以下错误:
Backup failed for Server 'localhost\SqlExpress'. (Microsoft.SqlServer.SmoExtended)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.0.2531.0+((Katmai_PCU_Main).090329-1045+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Backup+Server&LinkId=20476
ADDITIONAL INFORMATION:
System.Data.SqlClient.SqlError: Cannot open backup device 'C:\backup.bak'. Operating system error 5(failed to retrieve text for this error. Reason: 15105). (Microsoft.SqlServer.Smo)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.0.2531.0+((Katmai_PCU_Main).090329-1045+)&LinkId=20476
有谁能解释我在这里做错了什么?
感谢
答案 0 :(得分:88)
看起来SQL Server没有访问文件C:\ backup.bak的权限。我会检查分配给SQL Server服务帐户的帐户的权限。
作为解决方案的一部分,您可能希望将备份文件保存到C:驱动器根目录之外的其他位置。这可能是您遇到权限问题的一个原因。
答案 1 :(得分:45)
当没有足够的可用空间来创建备份时,我遇到了这个错误。
答案 2 :(得分:15)
假设* .bak文件与SQL Express实例位于同一台计算机上,则可能是权限问题。
如果您下载procmon http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx,您可以过滤该文件路径,查找ACCESS_DENIED错误,如果有任何错误,您可以看到失败的帐户名称。
答案 3 :(得分:10)
我也遇到了这个错误。
问题只是我必须手动创建MDF和文件位置的完整目录结构。 LDF文件。
在SQL-Server上感到羞耻,因为没有正确报告丢失的目录!
答案 4 :(得分:5)
我有同样的错误。我一直在尝试通过为运行SQL客户端服务的帐户设置更高的权限来修复此问题,但它没有帮助。问题是我在我的帐户内运行MS Sql Management studio。因此,下次...确保以以管理员身份运行运行它,如果在启用UAC的情况下使用Win7。
答案 5 :(得分:3)
是的,这是安全问题。检查SQL Server 2008启动时的文件夹权限和服务帐户。
答案 6 :(得分:3)
我有这个错误。在我打开“MSSQL10_50”Log文件夹中的SQLServer日志文件之前,没有什么对我有用。这清楚地说明了哪个文件无法覆盖。原来,.mdf文件被写入“MSSQL10”数据文件夹。我确保该文件夹具有与“MSSQL10_50”等效文件夹相同的SQLServer用户权限。然后这一切都奏效了。
此处的问题是记录错误详细信息但未报告,因此请检查日志。