创建合并复制实例时缺失两个Distribution清理作业,如何创建?
如何创建缺失的Distribution清理作业
如果SQL Server Agent中找不到“Agent History Clean Up: Distribution”和“Distribution Clean Up: Distribution”这两个作业,通常是因为分发服务器的初始化配置未完全生成这些系统作业,可通过以下步骤手动创建:
1. 确认分发服务器配置状态
先验证当前实例是否已配置为分发服务器或关联了分发的发布服务器,执行以下查询:
USE master GO EXEC sp_get_distributor GO
返回结果中如果is_distributor值为1,说明实例是分发服务器;如果为0,需要先通过配置分发向导完成分发服务器的配置。
2. 手动创建清理作业
使用系统存储过程sp_MSadd_distribution_cleanup_jobs直接生成这两个作业,操作步骤:
- 打开SQL Server Management Studio,连接到目标实例
- 新建查询窗口,切换到
master数据库 - 执行以下SQL命令:
USE master GO EXEC sp_MSadd_distribution_cleanup_jobs GO
3. 验证与配置作业
- 执行完成后,刷新SQL Server Agent下的Jobs节点,即可看到这两个作业(默认处于禁用状态)
- 右键作业选择启用,可按需修改作业的执行计划(比如调整清理频率)
- 若需立即清理,右键作业选择开始作业
注意事项
- 执行存储过程的账号需要具备
sysadmin固定服务器角色权限 - 可通过查看作业步骤,调整清理阈值(比如历史记录保留天数,默认48小时)
- 如果是远程分发服务器,需确保连接到正确的分发实例而非本地发布实例
内容的提问来源于stack exchange,提问作者Jerome
相关产品推荐
相关产品推荐

