SQL复制订阅(发布作业名称)作业被DBA用户拒绝,订阅日志读取器代理自动停止,订阅状态未运行。

SQL复制订阅日志读取器代理自动停止,同步作业被DBAAdmin用户拒绝这个问题困扰鄙人半月有余,百度千百回也没能解决。

阐述一下鄙人的解决方法:

1、首先确认SQL复制订阅日志读取器代理用户是否为数据库DBA用户(DBA用户如果没有就是默认的sa用户),如果是本地用户或者其它用户则更改为DBA用户

USE [msdb]
GO

/****** Object:  Job [发布作业名称]     ******/
BEGIN TRANSACTION
DECLARE @ReturnCode INT
SELECT @ReturnCode = 0
/****** Object:  JobCategory [REPL-Distribution]     ******/
IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'REPL-Distribution' AND category_class=1)
BEGIN
EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'REPL-Distribution'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

END

DECLARE @jobId BINARY(16)
EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=N'发布作业名称',
  @enabled=1,
  @notify_level_eventlog=0,
  @notify_level_email=0,
  @notify_level_netsend=0,
  @notify_level_page=0,
  @delete_level=0,
  @description=N'无描述。',
  @category_name=N'REPL-Distribution',
  @owner_login_name=N'DBA用户名', @job_id = @jobId OUTPUT


2、检查SQL复制订阅日志读取器代理的复制计划的计划类型***这是关键***

    ----------- 复制代理计划类型必须为"SQL代理启动时自动启动"


3、此时订阅状态还是未运行,且状态“严重或差”,完成以上步骤后重新初始化订阅或者重新启动日志读取代理即可解决问题。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值