Creare un passaggio di processo CmdExec
In questo argomento viene illustrato come creare e definire un passaggio di processo di Microsoft SQL Server Agent in SQL Server 2012 in cui viene utilizzato un programma eseguibile o un comando del sistema operativo tramite SQL Server Management Studio, Transact-SQL o SQL Server Management Objects.
Contenuto dell'argomento
Prima di iniziare:
Sicurezza
Per creare un passaggio di processo di CmdExec utilizzando:
SQL Server Management Studio
Transact-SQL
SQL Server Management Objects
Prima di iniziare
Sicurezza
Per impostazione predefinita, solo i membri del ruolo predefinito del server sysadmin possono creare passaggi di processo CmdExec. Questi passaggi di processo vengono eseguiti nel contesto dell'account di servizio SQL Server Agent a meno che l'utente sysadmin crei un account proxy. Gli utenti che non sono membri del ruolo sysadmin possono creare passaggi di processo CmdExec se hanno accesso a un account proxy CmdExec.
Autorizzazioni
Per informazioni dettagliate, vedere Implementazione della sicurezza di SQL Server Agent.
[Top]
Utilizzo di SQL Server Management Studio
Per creare un passaggio di processo di CmdExec
In Esplora oggetti connettersi a un'istanza del Motore di database di SQL Server ed espandere tale istanza.
Espandere SQL Server Agent, creare un nuovo processo oppure fare clic con il pulsante destro del mouse su un processo esistente e scegliere Proprietà.
Nella finestra di dialogo Proprietà processo fare clic sulla pagina Passaggi e quindi su Nuovo.
Nella finestra di dialogo Nuovo passaggio di processo digitare il nome del passaggio del processo nella casella Nome passaggio.
Nell'elenco Tipo selezionare Sistema operativo (CmdExec).
Nell'elenco Esegui come selezionare l'account proxy con le credenziali che verranno utilizzate dal processo. Per impostazione predefinita, questi passaggi di processo vengono eseguiti nel contesto dell'account di servizio SQL Server Agent.
Nella casella Elabora codice di uscita di un comando eseguito correttamente digitare un valore compreso tra 0 e 999999.
Nella casella Comando digitare il comando di sistema operativo o programma eseguibile. Per un esempio vedere "Utilizzo di Transact-SQL".
Fare clic sulla pagina Avanzate per impostare le opzioni relative ai passaggi di processo, ad esempio l'operazione da eseguire se il passaggio di processo ha esito positivo o negativo, il numero di tentativi che devono essere eseguiti da SQL Server Agent per l'esecuzione del passaggio di processo e il file in cui SQL Server Agent può scrivere l'output del passaggio di processo. Solo i membri del ruolo predefinito del server sysadmin possono scrivere l'output dei passaggi di processo in un file di sistema operativo.
[Top]
Utilizzo di Transact-SQL
Per creare un passaggio di processo di CmdExec
In Esplora oggetti connettersi a un'istanza del Motore di database.
Sulla barra Standard fare clic su Nuova query.
Copiare e incollare l'esempio seguente nella finestra Query e fare clic su Esegui.
-- creates a job step that that uses CmdExec USE msdb; GO EXEC sp_add_jobstep @job_name = N'Weekly Sales Data Backup', @step_name = N'Set database to read only', @subsystem = N'CMDEXEC', @command = C:\clickme_scripts\SQL11\PostBOLReorg GetHsX.exe', @retry_attempts = 5, @retry_interval = 5 ; GO
Per ulteriori informazioni, vedere sp_add_jobstep (Transact-SQL)
[Top]
Utilizzo di SQL Server Management Objects
Per creare un passaggio di processo di CmdExec
Utilizzare la classe JobStep tramite un linguaggio di programmazione come Visual Basic, Visual C# o PowerShell. Per ulteriori informazioni, vedere SMO (SQL Server Management Objects).
[Top]