访问被拒绝在存储过程中运行exe文件

时间:2014-11-19 08:02:57

标签: sql sql-server stored-procedures

我想从存储过程运行exe文件。但是,输出是“访问被拒绝”。 我能怎么做?我的SQL查询如下。它只是测试查询

EXEC master..xp_CMDShell 'C:\Users\myo.minlin\Downloads\Firefox Setup Stub 33.1.1.exe'

1 个答案:

答案 0 :(得分:0)

原因是您的 SQL-Server 进程(如果未另外指定)运行,而不是 myo.minlin 帐户。启动该进程的帐户对您提供的文件没有权限。这很好,因为数据库不应该能够访问您的私人文件。有三种甚至更多可能的解决方案:

  1. 将文件移动到SQL-Server有权访问的位置。
  2. 确保运行SQL-Server的帐户具有执行文件的权限
  3. 使用 myo.milin 帐户启动 SQL Server 流程。
  4. 我不推荐解决方案3.如果文件位于您的主目录中,也不建议使用解决方案2.

    请参阅Configure Windows Service Accounts and Permissions