Compartir a través de


Crear un trabajo maestro del Agente SQL Server

se aplica a:SQL Serverazure SQL Managed Instance

Importante

En Azure SQL Managed Instance, actualmente son compatibles la mayoría de las características del Agente SQL Server. Consulte Diferencias de T-SQL entre SQL Server y Azure SQL Managed Instance o Limitaciones de los trabajos del Agente SQL en SQL Managed Instance para obtener más información.

En este tema se describe cómo crear un trabajo maestro del Agente MICROSOFT SQL Server en SQL Server mediante SQL Server Management Studio o Transact-SQL.

Antes de empezar

Limitaciones y restricciones

Los cambios realizados en los trabajos maestros del Agente SQL Server deben propagarse a todos los servidores de destino implicados. Dado que los servidores de destino no descargan inicialmente un trabajo hasta que se especifican esos destinos, Microsoft recomienda completar todos los pasos de trabajo y las programaciones de trabajo de un trabajo determinado antes de especificar los servidores de destino. De lo contrario, debe solicitar manualmente que los servidores de destino descarguen de nuevo el trabajo modificado, ya sea ejecutando el procedimiento almacenado sp_post_msx_operation o modificando el trabajo mediante SQL Server Management Studio. Para obtener más información, vea sp_post_msx_operation (Transact-SQL) o Modificar un trabajo.

Seguridad

Permisos

Trabajos distribuidos que tienen pasos asociados a una ejecución de proxy en el contexto de la cuenta de proxy en el servidor de destino. Asegúrese de que se cumplen las condiciones siguientes o que los pasos de trabajo asociados a un proxy no se descargarán del servidor maestro al destino:

  • La subclave del Registro \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<*instance_name*>\Agente SQL Server\AllowDownloadedJobsToMatchProxyName (REG_DWORD) se establece en 1 (true). De forma predeterminada, esta subclave se establece en 0 (false).

  • Existe una cuenta de proxy en el servidor de destino que tiene el mismo nombre que la cuenta de proxy del servidor maestro en la que se ejecuta el paso de trabajo.

Si se produce un error en los pasos de trabajo que usan cuentas de proxy al descargarlas desde el servidor maestro al servidor de destino, puede consultar la columna error_message de la tabla sysdownloadlist en la base de datos MSDB para ver los siguientes mensajes de error:

  • "Este trabajo requiere una cuenta de proxy, pero la coincidencia de proxy se ha deshabilitado en el servidor de destino." Para resolver este error, establezca la subclave de registro AllowDownloadedJobsToMatchProxyName en 1.

  • "No se encontró el proxy". Para resolver este error, asegúrese de que existe una cuenta de proxy en el servidor de destino que tiene el mismo nombre que la cuenta de proxy del servidor maestro en la que se ejecuta el paso de trabajo.

Uso de SQL Server Management Studio

Para crear un trabajo principal del Agente SQL Server

  1. En el Explorador de objetos , haga clic en el signo más para expandir el servidor donde desea crear una tarea del Agente de SQL Server.

  2. Haga clic en el signo más para expandir Agente SQL Server.

  3. Haga clic con el botón derecho en la carpeta Trabajos de y seleccione Nuevo trabajo....

  4. En el cuadro de diálogo Nuevo trabajo , en la página General , modifique las propiedades generales del trabajo. Para obtener más información sobre las opciones disponibles en esta página, consulte Propiedades del trabajo: nuevo trabajo (página General)

  5. En la página Pasos, organice los pasos de trabajo. Para obtener más información sobre las opciones disponibles en esta página, consulte Propiedades del trabajo: Nuevo trabajo (página Pasos)

  6. En la página Programaciones, organice las programaciones del trabajo. Para obtener más información sobre las opciones disponibles en esta página, vea Propiedades del trabajo : nuevo trabajo (página Programaciones)

  7. En la página Alertas, organice las alertas del trabajo. Para obtener más información sobre las opciones disponibles en esta página, consulte Propiedades del trabajo - Nuevo trabajo (página Alertas)

  8. En la página Notificaciones, establezca acciones que el Agente de Microsoft SQL Server debe realizar cuando se complete el trabajo. Para obtener más información sobre las opciones disponibles en esta página, consulte Propiedades del trabajo: Nuevo trabajo (página Notificaciones).

  9. En la página Destinos, administre los servidores de destino del trabajo. Para más información sobre las opciones disponibles en esta página, consulte Propiedades de trabajo - Nuevo trabajo (página Destinos).

  10. Cuando termine, haga clic en Aceptar.

Uso de Transact-SQL

Para crear un trabajo principal del Agente SQL Server

  1. En Explorador de objetos, conéctese a una instancia del motor de base de datos.

  2. En la barra Estándar, haga clic en Nueva consulta.

  3. Copie y pegue el ejemplo siguiente en la ventana de consulta y haga clic en Ejecutar.

    USE msdb ;  
    GO  
    -- Adds a new job executed by the SQLServerAgent service called 'Weekly Sales Data Backup'  
    EXEC dbo.sp_add_job  
        @job_name = N'Weekly Sales Data Backup' ;  
    GO  
    -- Adds a step (operation) to the 'Weekly Sales Data Backup' job.  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Set database to read only',  
        @subsystem = N'TSQL',  
        @command = N'ALTER DATABASE SALES SET READ_ONLY',   
        @retry_attempts = 5,  
        @retry_interval = 5 ;  
    GO  
    -- Creates a schedule called RunOnce  
    EXEC dbo.sp_add_schedule  
        @schedule_name = N'RunOnce',  
        @freq_type = 1,  
        @active_start_time = 233000 ;  
    USE msdb ;  
    GO  
    -- Sets the 'RunOnce' schedule to the "Weekly Sales Data Backup' Job  
    EXEC sp_attach_schedule  
       @job_name = N'Weekly Sales Data Backup',  
       @schedule_name = N'RunOnce';  
    GO  
    -- assigns the multiserver job Weekly Sales Backups to the server SEATTLE2  
    -- assumes that SEATTLE2 is registered as a target server for the current instance.  
    EXEC dbo.sp_add_jobserver  
        @job_name = N'Weekly Sales Data Backups',  
        @server_name = N'SEATTLE2' ;  
    GO  
    

Para obtener más información, consulte: