You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server快照复制旧快照文件夹无法自动删除问题排查求助

快照复制清理无报错但文件未删除的排查问题

我正在使用SQL Server 2017、SSMS v19.0.2,成功配置快照复制后,因磁盘空间被大量占用不得不禁用该功能。分发清理作业运行成功,但报告无任何删除操作:

DBCC执行完成。若DBCC输出错误消息,请联系系统管理员。[SQLSTATE 01000](消息2528) 从MSrepl_commands每秒删除0行[SQLSTATE 01000](消息22121) 从MSrepl_transactions每秒删除0行[SQLSTATE 01000](消息22121) 在10毫秒内移除0个包含0条语句的复制事务(0行/毫秒)。[SQLSTATE 01000](消息21010)。步骤成功。

当我手动执行以下存储过程时,同样返回成功消息,但文件和文件夹仍未被删除:

EXEC dbo.sp_MSdistribution_cleanup @min_distretention = 0, @max_distretention = 6

快照代理曾出现过两个错误,我正在单独处理:

  • 数据库'...'无法打开,正在还原中(我会优化调度)。
  • '...'中对数据库和/或服务器名称的引用在当前SQL Server版本中不受支持(我会深入排查该视图)。

从社区帖子了解到:

快照代理仅尝试删除旧快照文件一次,若文件当时被锁定(比如合并代理锁定),可能会残留。

我认为并非锁定问题,这些文件存储在网络共享中,怀疑是权限问题。困惑的是,创建文件的快照复制进程能写入该位置,却无法删除且无失败报错。现寻求无报错情况下的排查建议:

  1. 无错误消息本身是否能指向根本原因?
  2. 是否能在其他位置(如事件查看器)找到错误消息?
  3. 我已验证服务器上xp_cmdshell已启用。
  4. 能否通过手动执行dbo.sp_MSdistribution_cleanup验证修复成功?无需代理运行时该操作能否删除文件?是否有更优的验证方式?

内容的提问来源于stack exchange,提问作者Tom Schulte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 11:37:57