c# - 不是管理员帐户时如何复制 SQL Server MDF 和 LDF 文件
问题描述
要求:在登录用户的安全上下文下运行的 C# 应用程序具有分离 SQL Server 数据库、将文件复制.MDF
到.LDF
ZIP 存档文件中、然后重新附加数据库的任务。
数据库是 SQL Server 2012 Express 本地安装。
遇到的问题是,尽管数据所在的文件夹允许用户帐户完全访问,但该用户帐户无法访问此文件夹中的文件,.MDF
并且.LDF
需要管理员提升才能复制和移动。
如果 C# 应用程序在管理模式下运行,则可以正常工作。如果 C# 应用程序未在管理模式下运行,则复制将始终失败并出现访问被拒绝错误。
这可以直接通过 Windows 资源管理器中的 UI 进一步复制。如果在 Management Studio 中分离 SQL 数据库,如果您转到存储数据的文件夹并尝试复制.MDF
或.LDF
文件并将它们粘贴到某处,它将首先提示您提供管理员权限。
如何解决这个问题,以便不在管理模式下运行应用程序的用户能够让应用程序复制和移动这些数据库文件?
澄清:附加和分离操作始终有效,它的.mdf
文件副本失败。有很多关于附加操作失败的问题,这不是这个问题的意义所在。
解决方案
推荐阅读
- sed - 替换单词,但只能在冒号之后
- html - 如何将 ngx modal 设置为屏幕中间?
- javascript - javascript没有以某种方式运行
- javascript - 如果代理使用 Live Chat Inc 离线,则隐藏 div
- typescript - 如何在 .map 中定义解构参数的类型
- google-sheets - Google 电子表格中的 INNER JOIN
- python - 与 python 一起使用时,Google Bigquery 第一次调用太慢了
- reactjs - React Table 错误并且没有 CSS 文件
- apache - 如果域配置了另一个 apache 端口到 xampp,HTTPS 不起作用
- python - Tensorflow CIELAB 颜色空间边界