SQLServer Agent执行[分发清除: distribution] 无法删除快照文件

时间:2023-03-09 05:52:47
SQLServer Agent执行[分发清除: distribution] 无法删除快照文件

由于之前创建的发布订阅造成严重的性能压力,症状表现为发布订阅表查询产生CMEMTHREAD  suspend等待,由于开发配置每隔十分钟会产生大量的SQLCOMMAND(create table,create index大量的命令)发布订阅 复制监视器 有Memory压力的假象,最开始反映在前端,时卡时慢,同样的语句,同样的缓存计划,不同时间段查询时间长短不一,甚至超时,最开始以为08的内存内存没有2012+的有优势,最开始有打算升级系统打算,不过不现实,经过分析提出两种方案,最后舍弃了一个有成本产生的一种方案;重新配置分发服务器!!!详情见另博客!

  当配置完时一个作业失败了:

SQLServer Agent执行[分发清除: distribution] 无法删除快照文件

错误日志信息:

消息
已以用户 .\SHBackupManager 的身份执行。 无法删除目录 '\\SHS-PQWEWQESQL02\repldata\unc\SHS-XXXX2_OT_XXXT_OTXXXXP\20161116144117\'。请查看 xp_cmdshell 的安全上下文,并关闭其他可能正在访问该目录的进程。 [SQLSTATE 42000] (错误 20015).  该步骤失败。

SQLServer Agent执行[分发清除: distribution] 无法删除快照文件

错误日志消息:

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. 无法清除分发事务表。

解决:

找到我们放快照的文件夹,属性-安全

SQLServer Agent执行[分发清除: distribution] 无法删除快照文件

到了这里原以为ok了,执行还是一样的报错!!!

由于我采用了订阅请求模式,用的是网络共享文件夹路径;所以要给网络共享的用户赋予权限!!!

SQLServer Agent执行[分发清除: distribution] 无法删除快照文件

测试结果

SQLServer Agent执行[分发清除: distribution] 无法删除快照文件