无法复制 SQL Server 文件,访问被拒绝

Posted

技术标签:

【中文标题】无法复制 SQL Server 文件,访问被拒绝【英文标题】:Can not copy SQL Server files, Access is denied 【发布时间】:2012-03-16 08:24:10 【问题描述】:

我需要将我的 SQL Server 数据库复制到一个文件夹中。这些文件附加到我使用我的代码分离的 SQL Server。当我尝试使用复制这些文件时

My.Computer.FileSystem.CopyFile(filePathToCopyFrom1, targetFilePath1)

返回错误: "访问文件夹 D:\MyDbs 被拒绝"

当我手动处理这些文件时,它询问“您需要管理员权限才能复制这些文件”,我点击了继续,它工作了,但是如何使用我的 vb.net 代码解决这个问题?

我已从 Windows 将完全控制权授予管理员,但仍然无法正常工作。 谢谢

【问题讨论】:

你的代码是以什么用户身份运行的? 【参考方案1】:

似乎分离过程很顺利。您可以通过 Windows 资源管理器进行复制,但不能从您的应用程序中复制。此处的主要区别在于文件受到保护,只能由管理员用户访问。

然后,您需要使用管理员 windows 帐户运行您的应用程序,以便应用程序继承用户的权限才能执行此操作。

【讨论】:

【参考方案2】:

请记住,如果您使用的是 Windows Vista+(我假设您会这样做),那么根文件夹几乎是不受限制的。您可以以管理员身份运行该应用程序,或将其复制到根目录下的文件夹中。另一点是你从哪里复制。如果数据库当前在程序文件中,您很可能也会遇到此问题,然后您必须以管理员身份运行应用程序。

右键单击应用程序,然后选择以管理员身份运行,或选择属性并在兼容性中选中程序应以管理员身份运行的框。如果您使用后者,那么每次运行时都会弹出一个框,除非您更改用户帐户控制设置。

【讨论】:

以上是关于无法复制 SQL Server 文件,访问被拒绝的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 2008 文件流模拟访问被拒绝错误

无法复制文件 - 访问路径被拒绝

无法复制文件。访问路径被拒绝

连接SQL SERVER数据库提示不存在或访问被拒绝

SQL Server无法打开物理文件,操作系统错误 5:"5(拒绝访问。)的解决办法

信息:无法打开物理文件“路径”。操作错误5:“5(拒绝访问。)”(MICROSOFT SQL Server,错误:5120)