SqlServer代理执行[分发清除: distribution] 无法删除快照文件

每天偶尔检查数据库作业是否失败,发现有错误

select top 10 job_id,run_date,run_time,run_duration,step_name,message
from  msdb..sysjobhistory where run_status = 0 
order by run_date desc,run_time desc


该作业失败 计划 12(复制代理计划)调用了该作业最后运行的是步骤 1(运行代理).

 

已以用户 NTAUTHORITY\NETWORKSERVICE的身份执行

无法删除目录 'D:\DataBase\ReplData\unc\*****************************\20150206021846\'

请查看 xp_cmdshell的安全上下文并关闭其他可能正在访问该目录的进程

 [SQLSTATE 42000](错误 20015). 该步骤失败


错误日志消息:

Replication-@rowcount_only 参数值必须是 0、1 或 2。0=7.0 兼容的校验和。1=只检查行计数。2=版本 8.0 中引入的新校验和功能。: agent distribution@rowcount_only 参数值必须是 0、1 或 2。0=7.0 兼容的校验和。1=只检查行计数。2=版本 8.0 中引入的新校验和功能。 scheduled for retry. 无法清除分发事务表。



--查看执行的作业
select * from msdb.dbo.sysjobs where job_id = 'DC0DF572-9339-46ED-84E7-2C1ED622C067'


查看SqlServer代理账户, NT AUTHORITY\NETWORK SERVICE




找到该目录,是快照目录,很久没使用过了。几天前有初始化用过,今天快照到期了,分发清除运行删除。

而代理账户NT AUTHORITY\NETWORK SERVICE 没有操作文件夹的权限




添加用户对象NT AUTHORITY\NETWORK SERVICE 




授予所有权限





好了,现在执行[分发清除: distribution]作业,成功!





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值