The meta data is from an SQL 2012 Server.
I have posted alot more, find the whole list here.
Goto Definition or MetaData
Definition:
sys.sp_MShelp_repl_agent(nvarchar @publisher, nvarchar @publisher_db
, nvarchar @publication
, nvarchar @subscriber
, nvarchar @subscriber_db
, int @agent_type)
MetaData:
create procedure sys.sp_MShelp_repl_agent ( @publisher sysname, @publisher_db sysname, @publication sysname = NULL, @subscriber sysname = NULL, @subscriber_db sysname = NULL, @agent_type int -- 0: Distribution 1: ReplMerge 2: Logreader 3: Queued ) as begin set nocount on declare @retcode int, @publisher_id int, @subscriber_id int, @publisher_security_mode int, @publisher_login sysname, @publisher_password nvarchar(524), @subscriber_security_mode int, @subscriber_login sysname, @subscriber_password nvarchar(524) -- make sure this is a replication agent. if sessionproperty('replication_agent') != 1 begin -- "You do not have sufficient permission to run this command." raiserror(14260, 16, -1) return 1 end -- sysadmin or db_owner have access if is_srvrolemember('sysadmin') != 1 and is_member('db_owner') != 1 begin -- "You do not have sufficient permission to run this command." raiserror(14260, 16, -1) return 1 end -- Has to be executed from distribution database if sys.fn_MSrepl_isdistdb (db_name()) != 1 begin -- "sp_MShelp_repl_agent can only be executed in the distribution database." raiserror (21482, 16, -1, 'sp_MShelp_repl_agent', 'distribution') return 1 end -- retrieve server ids select @publisher_id = srvid from master..sysservers where upper(srvname) = upper(@publisher) select @subscriber_id = srvid from master..sysservers where upper(srvname) = upper(@subscriber) select @subscriber_security_mode = 1, @subscriber_login = NULL, @subscriber_password = NULL, @publisher_security_mode = 1, @publisher_login = NULL, @publisher_password = NULL -- Distribution and Queued Agent if @agent_type in (0, 3) begin select msda.subscriber_security_mode, msda.subscriber_login, sys.fn_repldecryptver4(msda.subscriber_password) from MSdistribution_agents msda where msda.publisher_id = @publisher_id and msda.publisher_db = @publisher_db and (msda.publication = @publication or lower(msda.publication) = N'all') and msda.subscriber_id = @subscriber_id and msda.subscriber_db = @subscriber_db if @@error <> 0 return 1 end -- Merge Agent else if @agent_type = 1 begin select msma.subscriber_security_mode, msma.subscriber_login, sys.fn_repldecryptver4(msma.subscriber_password), msma.publisher_security_mode, msma.publisher_login, sys.fn_repldecryptver4(msma.publisher_password) from dbo.MSmerge_agents msma where msma.publisher_id = @publisher_id and msma.publisher_db = @publisher_db and msma.publication = @publication and UPPER(msma.subscriber_name) = UPPER(@subscriber) and msma.subscriber_db = @subscriber_db if @@error <> 0 return 1 end -- Logreader Agent else if @agent_type = 2 begin -- retrieve the publisher server and database name select @publisher_security_mode = msla.publisher_security_mode, @publisher_login = msla.publisher_login, @publisher_password = sys.fn_repldecryptver4(msla.publisher_password) from MSlogreader_agents msla where msla.publisher_id = @publisher_id and msla.publisher_db = @publisher_db if @@error <> 0 return 1 select @publisher_security_mode, @publisher_login, @publisher_password end return 0 end
No comments:
Post a Comment