Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
se aplica a:SQL Server
azure 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.
Los pasos de trabajo son acciones que el trabajo realiza en una base de datos o en un servidor. Cada trabajo debe estar formado por un paso, como mínimo. Los pasos de trabajo pueden ser:
- Programas ejecutables y comandos del sistema operativo.
- Instrucciones Transact-SQL, incluidos los procedimientos almacenados y los procedimientos almacenados extendidos.
- Scripts de PowerShell.
- Tareas de replicación.
- Tareas de Analysis Services.
- Paquetes de Integration Services.
Cada paso de trabajo se ejecuta en un contexto de seguridad específico. Si en el paso de trabajo se especifica un proxy, se ejecuta en el contexto de seguridad de la credencial del proxy. Si un paso de trabajo no especifica un proxy, el paso de trabajo se ejecuta en el contexto de la cuenta de servicio del Agente SQL Server. Solo los miembros del rol fijo de servidor sysadmin pueden crear trabajos que no especifiquen explícitamente un proxy.
Dado que los pasos de trabajo se ejecutan en el contexto de un usuario específico de Windows, ese usuario debe tener los permisos y la configuración necesarios para que se ejecute el paso de trabajo. Por ejemplo, si crea un trabajo que requiere una letra de unidad o una ruta de acceso UNC (Convención de nomenclatura universal), los pasos de trabajo se pueden ejecutar con la cuenta de usuario de Windows durante la comprobación de las tareas. Sin embargo, el usuario de Windows para el paso de trabajo debe tener también los permisos y configuraciones de letra de unidad necesarios, o acceso a la unidad requerida. De lo contrario, se producirá un error en el paso de trabajo. Para evitar este problema, asegúrate de que el proxy de cada etapa de trabajo tenga los permisos necesarios para la tarea que realiza dicha etapa. Para más información, consulte Seguridad para el motor de base de datos de SQL Server y Azure SQL Database.
Registros de pasos de trabajo
El Agente SQL Server puede escribir la salida de algunos pasos de trabajo en un archivo del sistema operativo o en la tabla sysjobstepslogs de la msdb
base de datos. Los siguientes tipos de pasos de trabajo pueden escribir la salida en los siguientes destinos:
- Programas ejecutables y comandos del sistema operativo.
- Instrucciones Transact-SQL.
- Tareas de Analysis Services.
Solo los pasos de trabajo ejecutados por los usuarios que son miembros del rol fijo de servidor sysadmin pueden escribir el resultado del paso de trabajo en los archivos del sistema operativo. Si los pasos de trabajo son ejecutados por usuarios que son miembros de los roles fijos de base de datos SQLAgentUserRole, SQLAgentReaderRole o SQLAgentOperatorRole en la base de datos msdb
, entonces la salida de estos pasos solo se puede escribir en la tabla sysjobstepslogs.
Los registros de pasos de trabajo se eliminan automáticamente cuando se eliminan los trabajos o los pasos de trabajo.
Nota
La tarea de replicación y el registro de las etapas del trabajo del paquete de Integration Services se gestionan mediante sus respectivos subsistemas. No puede usar el Agente SQL Server para configurar el registro de pasos de jog para estos tipos de pasos de trabajo.
Programas ejecutables y comandos del sistema operativo como pasos de trabajo
Los programas ejecutables y los comandos del sistema operativo se pueden usar como pasos de trabajo. Estos archivos pueden tener extensiones de archivo .bat, .cmd, .com o .exe.
Cuando se usa un programa ejecutable o un comando del sistema operativo como paso de trabajo, debe especificar:
El código de salida del proceso que se devuelve si el comando se ha ejecutado correctamente.
El comando que se debe ejecutar. Para ejecutar un comando del sistema operativo, basta con el comando en sí. Para un programa externo, este es el nombre del programa y los argumentos del programa, por ejemplo:
C:\Program Files\Microsoft SQL Server\160\Tools\Binn\sqlcmd.exe -e -q "sp_who"
Proporcione la ruta de acceso completa al archivo ejecutable si el archivo ejecutable no se encuentra en un directorio especificado en la ruta de acceso del sistema, o la ruta de acceso del usuario bajo el cual se ejecuta el paso de trabajo.
Pasos del trabajo de Transact-SQL
Al crear un paso de trabajo de Transact-SQL, debe:
Identifique la base de datos en la que se va a ejecutar el trabajo.
Escriba la instrucción Transact-SQL para ejecutar. La instrucción puede llamar a un procedimiento almacenado o un procedimiento almacenado extendido.
Opcionalmente, puede abrir un archivo Transact-SQL existente como comando para el paso de trabajo.
Sugerencia
Los pasos de trabajo de T-SQL en trabajos del Agente SQL Server modifican el valor de TEXTSIZE
, para limitar la longitud de determinadas columnas en los conjuntos de resultados. Este comportamiento podría dar lugar a resultados inesperados. Por ejemplo, SELECT
las consultas que funcionan según lo previsto en SQL Server Management Studio pueden devolver valores de columna truncados cuando se ejecutan a través del Agente SQL Server. Para evitar el truncamiento, establezca TEXTSIZE
en la consulta ejecutada por el paso de trabajo de T-SQL.
Los pasos de trabajo de Transact-SQL no utilizan servidores proxy del Agente SQL Server. En su lugar, el paso de trabajo se ejecuta como propietario del paso de trabajo o como cuenta de servicio del Agente SQL Server si el propietario del paso de trabajo es miembro del rol fijo de servidor sysadmin. Los miembros del rol fijo de servidor sysadmin también pueden especificar que los pasos del trabajo Transact-SQL se ejecuten en el contexto de otro usuario mediante el parámetro database_user_name del sp_add_jobstep
procedimiento almacenado. Para obtener más información, consulte sp_add_jobstep.
Nota
Un solo paso de trabajo de Transact-SQL puede contener varios lotes. Los pasos de trabajo de Transact-SQL pueden contener comandos GO incrustados.
Pasos del trabajo de scripting de PowerShell
Al crear un paso de trabajo de script de PowerShell, debe especificar una de estas dos cosas como comando para el paso:
- Texto de un script de PowerShell.
- Un archivo de script de PowerShell existente que se va a abrir.
El subsistema de PowerShell del Agente SQL Server abre una sesión de PowerShell y carga los complementos de SQL Server PowerShell. El script de PowerShell que se usa como comando de paso de trabajo puede hacer referencia al proveedor y cmdlets de SQL Server PowerShell. Para obtener más información sobre cómo escribir scripts de PowerShell usando los complementos de SQL Server PowerShell, consulte el SQL Server PowerShell.
Pasos del trabajo de replicación
Al crear publicaciones y suscripciones mediante la replicación, los trabajos de replicación se crean de forma predeterminada. El tipo de trabajo creado viene determinado por el tipo de replicación (instantánea, transaccional o combinación) y las opciones usadas.
Los pasos del trabajo de replicación activan uno de estos agentes de replicación:
- Agente de instantáneas (trabajo Instantánea)
- Agente de lectura de registros (trabajo de Log Reader)
- Agente de distribución (trabajo de distribución)
- Agente de mezcla (trabajo de mezcla)
- Agente de lectura de cola (trabajo Lectura de cola)
Cuando se configura la replicación, puede especificar que ejecute los agentes de replicación de una de estas tres maneras: continuamente después de iniciar el Agente SQL Server, a petición o según una programación. Para obtener más información sobre los agentes de replicación, consulte Replication Agents Overview.
Pasos del trabajo de Analysis Services
El Agente SQL Server admite dos tipos distintos de pasos de trabajo de Analysis Services, pasos de trabajo de comandos y pasos de trabajo de consulta.
Pasos del trabajo del comando de Analysis Services
Al crear un paso de trabajo de comando de Analysis Services, debe hacer lo siguiente:
Identifique el servidor OLAP de base de datos en el que se va a ejecutar el paso de trabajo.
Escriba la instrucción para ejecutar. La instrucción debe ser un método XML for Analysis Services Execute. Es posible que la instrucción no contenga un sobre SOAP completo o un método Discover XML para Servicios de Análisis. Tenga en cuenta que, aunque SQL Server Management Studio admite sobres SOAP completos y el método Discover, los pasos de trabajo del Agente SQL Server no lo hacen.
Pasos de trabajo de consulta de Analysis Services
Al crear un paso de trabajo de consulta de Analysis Services, debe:
Identifique el servidor OLAP de base de datos en el que se va a ejecutar el paso de trabajo.
Escriba la instrucción para ejecutar. La instrucción debe ser una consulta de expresiones multidimensionales (MDX).
Para más información sobre MDX, consulte Aspectos básicos de la instrucción MDX.
paquetes de Integration Services
Al crear un paso de trabajo para un paquete de Servicios de Integración, debe seguir los siguientes pasos:
Identifique el origen del paquete.
Identifique la ubicación del paquete.
Si los archivos de configuración son necesarios para el paquete, identifique los archivos de configuración.
Si los archivos de comandos son necesarios para el paquete, identifique los archivos de comandos.
Identifique la comprobación que se va a usar para el paquete. Por ejemplo, puede especificar que el paquete debe estar firmado o que el paquete debe tener un identificador de paquete específico.
Identifique los orígenes de datos del paquete.
Identifique los proveedores de registro del paquete.
Especifique variables y valores que se van a establecer antes de ejecutar el paquete.
Identifique las opciones de ejecución.
Agregue o modifique las opciones de línea de comandos.
Si ha implementado el paquete en el catálogo de SSIS y especifica el catálogo de SSIS como origen del paquete, gran parte de esta información de configuración se obtiene automáticamente del paquete. En la pestaña Configuración puede especificar el entorno, los valores de parámetro, los valores del administrador de conexiones, las invalidaciones de propiedad y si el paquete se ejecuta en un entorno en tiempo de ejecución de 32 bits.
Para obtener más información sobre cómo crear pasos de trabajo que ejecutan paquetes de Integration Services, consulte trabajos del Agente SQL Server para paquetes.
Tareas relacionadas
Descripción | Artículo |
---|---|
Describe cómo crear un paso de trabajo con un programa ejecutable. | Crear un paso de trabajo CmdExec |
Describe cómo restablecer los permisos del Agente SQL Server. | Configurar un usuario para crear y administrar trabajos del Agente SQL Server |
Describe cómo crear un paso de trabajo de Transact-SQL. | Crear un paso de trabajo Transact-SQL |
Describen cómo definir las opciones para los pasos de trabajo del Agente de Microsoft SQL Server Transact-SQL. | definir opciones de paso de trabajo de Transact-SQL |
Describe los pasos para crear un paso de trabajo de un script de ActiveX. | Creación de un paso de trabajo de script ActiveX |
Describe cómo crear y definir pasos de trabajo del Agente SQL Server que ejecutan comandos y consultas de SQL Server Analysis Services. | Creación de un paso de trabajo de Analysis Services |
Describe qué acción debe realizar SQL Server si se produce un error durante la ejecución del trabajo. | Establecimiento del flujo de éxito o error del paso de trabajo |
Describe cómo ver los detalles del paso de trabajo en el cuadro de diálogo Propiedades del paso de trabajo. | Ver información de pasos de trabajo |
Describe cómo eliminar un registro de pasos de trabajo del Agente SQL Server. | eliminar un registro de pasos de trabajo |