首先,你确定你想将数据记录到文本文件授予权限?可能将日志存储到单独的表格会更好吗?
如果你想与文本文件的工作:
Windows进程使用xp_cmdshell催生具有相同的安全权限的SQL Server服务帐户。
检查此帐户的安全权限。
可以使用基于策略的管理或通过执行sp_configure来启用和禁用xp_cmdshell。
检查确保已启用。
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE
GO
当由不是sysadmin固定服务器角色成员的用户调用xp_cmdshell的使用存储在一个名为## xp_cmdshell_proxy_account ##凭据的帐户名和密码连接到Windows。如果此代理凭证不存在,则xp_cmdshell将失败。
您需要create proxy account。
EXEC sp_xp_cmdshell_proxy_account [MyDomain\SQLServerProxy], 'usdcu&34&23'
添加权限使用该SP:
USE master;
GRANT EXECUTE on xp_cmdshell to Current_user
这里是一个更detailed information。
hi @demas,我没有权限执行此操作,它有任何方法可以跟踪storeprocedure的工作而不使用xp_cmdshell – 2014-12-11 09:27:22
您可以更改sp的代码并将所需的所有信息存储在表中,您将为此任务创建 – demas 2014-12-11 09:55:02