Estos paquetes pueden ser almacenados en el servidor Integration Services, en SSIS Package Store, base de datos msdb, y en el archivo de sistema, fuera de la localización que es parte del almacén de paquetes.
En este artículo explicaré cómo ejecutar paquetes SSIS usando:
- SQL Server Management Studio (SSMS)
- La utilidad DTEXECUI.EXE
- La utilidad de línea de comandos DTEXEC.EXE
- SQL Server Agent Job
Ejecutando paquetes SSIS usando SSMS (SQL Server Management Studio)
La ejecución en SSMS puede ser lograda si la conexión es establecida a través de una instancia en el motor de la Base de Datos que contiene el servidor de Integration Service (el Paquete debe ser almacenado en el servidor de Integration Service), o si la conexión es establecida a través del Integration Server que maneja un almacén de paqueted SSIS (un paquete debe ser almacenado en el almacén de paquetes o en la base de datos msdb).
Para ejecutar un paquete localizado en los catálogos de Integration Services bajo el nodo SSISDB en el panel Object Explorer, haga clic derecho ahí y elija la opción Execute. Antes de ejecutar, configure la ejecución del paquete, si es necesario, usando los ajustes en las opciones Parameters, Connection Managers y Advanced en el diálogo Execute package como se muestra a continuación.
Ejecutar un paquete desde SSMS en otro caso, cuando la conexión es establecida a través de Integration Server, el cual maneja el almacén de paquetes, también está disponible. Después de localizar un paquete bajo el tipo de base de datos Integration Services en Object Explorer, simplemente haga clic derecho y elija la opción Run Package como se muestra en la imagen a continuación.
Al elegir la opción Run Package de la lista desplegable se abrirá la ventana Execute Package Utility. A través de muchas pestañas a la izquierda el usuario puede configurar las opciones Execution Options, Reporting y Logging, y añadir configuraciones o archivos de comandos. Después de que la configuración de los parámetros esté lista, un paquete puede ser ejecutado haciendo clic en el botón Execute como muestra la siguiente imagen.
Hay otra manera de iniciar la ventana Execute Package Utility, usando la Interfaz de Línea de Comandos (Command Line Interface, CLI). La sintaxis para esta utilidad es: C:\&>dtexecui, lo cual abrirá la ventana Execute Package Utility.
Ejecutar un paquete usando este método dará los resultados en la ventana Package Execution Process. Todos los procesos, avisos, errores y validaciones serán presentados y podrán ser usados para análisis posteriores.
Los paquetes en el almacén de paquetes, la base de datos msdb y el archivo del sistema no pueden ser ejecutados en SSMS si la conexión es establecida a través de una instancia del motor de Base de Datos que alberga al servidor de Integration Services. Sin embargo, es posible importar un paquete a un servidor desde esta localización y ejecutarlo.
También, si una conexión es establecida a través del servicio Integration Services que maneja el almacén de paquetes, los paquetes almacenados en el servidor de Integration Services no pueden ser ejecutados. El paquete almacenado en el archivo del sistema no puede ser ejecutado directamente, pero puede ser importado al almacén de paquetes y luego ejecutado.
Ejecute paquetes SSIS usando la utilidad de línea de comandos DTEXEC.exe
Hay una manera de ejecutar todos los paquetes desde SSMS, sin importar si están almacenados en el servidor de Integration Services, el almacén de paquetes, la base de datos msdb o el archivo del sistema, y no importa si una conexión es establecida a través del servidor de Integration Services o el motor de la Base de Datos que alberga al servidor de Integration Services.
Usar el comando dtexec en cmd evade las limitaciones de conexión y almacenamiento. La Interfaz de Línea de Comandos con todas las opciones disponibles para la ejecución se muestra en la siguiente imagen.
Por ejemplo, la sintaxis para el paquete llamado “Package1”, localizado en el servidor “Test” puede ser:
C:\dtexec /SQL “\Package1” /SERVER “Test”
Otro ejemplo para el paquete llamado “Package1” localizado en el archive del sistema:
C:\dtexec /F “C:\User\Packages\Package1.dtsx”
Ejecutando paquetes SSIS usando SQL Server Agent Job
La ejecución puede ser programada usando SQL Server Agent Job. Antes de crear una nueva tarea, y programarla, el servicio SQL Agent Job debe ser iniciado.
En Object Explorer haga clic derecho en SQL Server Agent, bajo el nodo del motor de la base de datos seleccione New y elija Job de la lista desplegable, y la ventana New Job se abrirá. En la pestaña General el campo Name es mandatorio. Para programar una tarea, al menos un paso debe ser creado. Los pasos pueden ser creados desde la pestaña Steps haciendo clic en el botón New, una ventana se abrirá como se muestra a continuación.
El campo Step name es mandatorio. De la lista desplegable Type, se necesita seleccionar la opción SQL Server Integration Services Package y también SQL Server Agent Service Account de la lista Run as. La opción File system debe elegirse como fuente de paquetes para localizar un paquete en un dispositivo local e importarlo como un paso para la tarea. Note que más opciones para una fuente de paquetes como SQL Server, Package Store y el catálogo SSIS también están disponibles.
Una tarea creada puede ser iniciada manualmente cuando sea que el usuario lo desee, o puede ser programada para correr automáticamente. La programación de tareas puede establecerse bajo la pestaña Schedules.
El usuario puede establecer los parámetros para programar tareas haciendo clic en New (establecer nuevos parámetros), o Pick (correr una tarea junto con otras ya definidas) como se muestra a continuación.
Estas son varias maneras de ejecutar paquetes usando SSMS. También, los paquetes pueden ser ejecutados usando SQL Business Intelligence Development Studio, usando los procedimientos almacenados incorporados, Managed API- usando tipos y miembros en el espacio de nombres Microsoft.SqlServer.Management.IntegrationServices y Managed API- usando tipos y miembros en el espacio de nombres Microsoft.SqlServer.Dts.Runtime. Estos serán cubiertos en otro artículo.
Recursos útiles
- Cómo poder mover archivos de base de datos SQL (MDF y LDF) a otra ubicación - September 16, 2019
- Usando un archivo XML para configurar un paquete SSIS - December 18, 2015
- Usando paquetes SSIS para importar datos de MS Excel en una base de datos - December 18, 2015