Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Activité de la tâche SQL Server (la tâche a échoué mais les enregistrements d'historique de l'activité de la tâche affichent toujours l'état "en cours d'exécution")

Si vous exécutez ce package en tant que tâche à partir de SSISDB, vous pouvez utiliser la procédure d'arrêt de l'opération comme suit.

USE SSISDB
GO

EXEC [catalog].[stop_operation] 217583

https://msdn.microsoft.com/en-us/library/hh213131 .aspx voici une référence à l'arrêt des opérations. En cas de rupture de ce lien, ...

La base de données SSISDB stocke l'historique d'exécution dans des tables internes qui ne sont pas visibles pour les utilisateurs. Cependant, il expose les informations dont vous avez besoin via des vues publiques que vous pouvez interroger. Il fournit également des procédures stockées que vous pouvez appeler pour effectuer des tâches courantes liées aux packages.

Généralement, vous gérez les objets Integration Services sur le serveur dans SQL Server Management Studio. Cependant, vous pouvez également interroger les vues de la base de données et appeler directement les procédures stockées, ou écrire du code personnalisé qui appelle l'API gérée. SQL Server Management Studio et l'API managée interrogent les vues et appellent les procédures stockées pour effectuer bon nombre de leurs tâches. Par exemple, vous pouvez afficher la liste des packages Integration Services en cours d'exécution sur le serveur et demander l'arrêt des packages si nécessaire.

Affichage de la liste des packages en cours d'exécution

Vous pouvez afficher la liste des packages en cours d'exécution sur le serveur dans la boîte de dialogue Opérations actives. Pour plus d'informations, consultez Boîte de dialogue des opérations actives. Pour plus d'informations sur les autres méthodes que vous pouvez utiliser pour afficher la liste des packages en cours d'exécution, consultez les rubriques suivantes.

Accès Transact-SQL

Pour afficher la liste des packages en cours d'exécution sur le serveur, interrogez la vue, catalog.executions (base de données SSISDB) pour les packages dont l'état est 2.Accès programmatique via l'API géréeConsultez l'espace de noms Microsoft.SqlServer.Management.IntegrationServices et son cours.

Arrêter un package en cours d'exécution Vous pouvez demander l'arrêt d'un package en cours d'exécution dans la boîte de dialogue Opérations actives. Pour plus d'informations, consultez Boîte de dialogue des opérations actives. Pour plus d'informations sur les autres méthodes que vous pouvez utiliser pour arrêter un package en cours d'exécution, consultez les rubriques suivantes.

Accès Transact-SQL

Pour arrêter un package en cours d'exécution sur le serveur, appelez la procédure stockée, catalog.stop_operation (Base de données SSISDB).Accès par programmation via l'API géréeConsultez l'espace de noms Microsoft.SqlServer.Management.IntegrationServices et ses classes.

Affichage de l'historique des packages exécutés

Pour afficher l'historique des packages exécutés dans Management Studio, utilisez le rapport Toutes les exécutions. Pour plus d'informations sur le rapport Toutes les exécutions et d'autres rapports standard, consultez Rapports pour le serveur Integration Services. Pour plus d'informations sur les autres méthodes que vous pouvez utiliser pour afficher l'historique des packages en cours d'exécution, consultez les rubriques suivantes.

Accès Transact-SQL

Pour afficher des informations sur les packages qui ont été exécutés, interrogez la vue catalog.executions (base de données SSISDB). Accès par programmation via l'API gérée. Consultez l'espace de noms Microsoft.SqlServer.Management.IntegrationServices et ses classes.