sp_add_jobserver (Transact-SQL)

Gäller för:SQL Server

Riktar in sig på det angivna jobbet på den angivna servern.

Transact-SQL syntaxkonventioner

Syntax

sp_add_jobserver
    [ @job_id = ] job_id
        | [ @job_name = ] 'job_name'
    [ , [ @server_name = ] 'server' ]
[ ; ]

Arguments

[ @job_id = ] job_id

Jobbets identifikationsnummer. job_id är unik identifierare, med standardvärdet .NULL

Antingen @job_id eller @job_name måste specificeras, men båda kan inte specificeras.

[ @job_name = ] 'job_name'

Namnet på tjänsten. job_name är sysname, med standardvärdet .NULL

Antingen @job_id eller @job_name måste specificeras, men båda kan inte specificeras.

[ @server_name = ] N'server'

Namnet på servern där jobbet ska riktas in. @server_name är nvarchar(30), med en standard på (LOCAL). @server_name kan vara antingen (LOCAL) för en lokal server eller namnet på en befintlig målserver.

Returnera kodvärden

0 (lyckades) eller 1 (fel).

Resultatuppsättning

Ingen.

Anmärkningar

@automatic_post finns i sp_add_jobserver, men listas inte under Argument. @automatic_post är reserverat för internt bruk.

SQL Server Management Studio är ett enkelt, grafiskt sätt att hantera jobb och är det rekommenderade sättet att skapa och hantera jobbinfrastrukturen.

Permissions

Du kan ge EXECUTE behörigheter för denna procedur, men dessa behörigheter kan åsidosättas vid en SQL Server-uppgradering.

Andra användare måste tilldelas en av följande SQL Server Agent-fasta databasroller i databasen msdb :

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

För detaljer om behörigheterna för dessa roller, se SQL Server Agent Fixed Database Roles.

Endast medlemmar av sysadmin-rollen fast server kan köra sp_add_jobserver för jobb som involverar flera servrar.

Examples

A. Tilldela ett jobb till den lokala servern

Följande exempel tilldelar jobbet NightlyBackups att köras på den lokala servern.

Anmärkning

Detta exempel förutsätter att jobbet NightlyBackups redan existerar.

USE msdb;
GO

EXECUTE dbo.sp_add_jobserver @job_name = N'NightlyBackups';
GO

B. Tilldela ett jobb att köras på en annan server

Följande exempel tilldelar multiserverjobbet Weekly Sales Backups till servern SEATTLE2.

Anmärkning

Detta exempel antar att jobbet Weekly Sales Backups redan existerar och att det SEATTLE2 är registrerat som en målserver för den aktuella instansen.

USE msdb;
GO

EXECUTE dbo.sp_add_jobserver
    @job_name = N'Weekly Sales Backups',
    @server_name = N'SEATTLE2';
GO