Créer et surveiller des tâches

Une tâche est une ressource Oracle Cloud Infrastructure qui vous permet de créer et d'exécuter des tâches SQL de manière asynchrone sur une seule base de données gérée ou sur toutes les bases de données gérées d'un groupe de bases de données.

Avant de créer une tâche et de surveiller ses exécutions et ses instances d'exécution, vous devez :

Pour accéder à la section Tâches :

  1. Connectez-vous à la console Oracle Cloud Infrastructure.
  2. Ouvrez le menu de navigation, cliquez sur Observabilité et gestion. Sous Gestion de bases de données, cliquez sur Diagnostics & Management.
  3. Selon que vous souhaitez créer une tâche pour une seule base de données gérée ou un groupe de bases de données, allez à l'une des pages suivantes :
  4. Dans le volet gauche sous Ressources, cliquez sur Tâches.

Les onglets suivants sont affichés dans la section Tâches :

  • Définitions : Dans cet onglet, vous pouvez créer une tâche et consulter les tâches dont l'état est Actif et qui ont été créées au cours de la période sélectionnée dans le champ Période.
  • Exécutions : Dans cet onglet, vous pouvez surveiller les exécutions et les instances d'exécution d'une tâche.

Créer une tâche

Vous pouvez créer une tâche SQL pour effectuer des opérations d'administration sur une seule base de données gérée ou sur un groupe de bases de données.

Les informations fournies lors de la création d'une tâche permettent aux composants suivants de se connecter et d'interagir :

  • Base de données gérée unique ou groupe de bases de données sur lequel la tâche sera exécutée.
  • Pour les bases de données externes, l'agent de gestion pour Oracle Cloud Infrastructure installé sur un hôte et connecté à la base de données externe est utilisé pour exécuter la tâche.
    Note

    L'agent de gestion n'est pas requis pour les bases de données Oracle Cloud et les bases de données autonomes.
  • Le seau du service de stockage d'objets pour Oracle Cloud Infrastructure dans lequel les résultats d'une tâche de type Interrogation sont stockés.

Pour créer une tâche :

  1. Allez à la page Détails de la base de données gérée de la base de données gérée ou à la page Détails du groupe de bases de données du groupe de bases de données pour lequel vous voulez créer la tâche.
  2. Dans le volet gauche sous Ressources, cliquez sur Tâches.
  3. Dans la section Tâches, cliquez sur l'onglet Définitions, puis sur Créer une tâche.
  4. Dans le panneau Créer une tâche :
    1. Fournissez les informations suivantes pour la tâche SQL :
      1. Nom de la tâche : Entrez un nom unique pour la tâche.
      2. Description de la tâche : Facultativement, entrez une description de la tâche.
      3. Type SQL : Sélectionnez le type SQL. Les options disponibles sont les suivantes :
        • Interroger
        • LMD
        • LDD
        • PL*SQL
      4. Sélectionner un compartiment : Sélectionnez le compartiment dans lequel créer la tâche. Le compartiment dans lequel réside la base de données gérée ou le groupe de bases de données est sélectionné par défaut. Vous pouvez toutefois choisir de créer la tâche dans un autre compartiment.
      5. Temporisation : En fonction du temps que la tâche SQL est susceptible de prendre, sélectionnez l'une des options dans la liste déroulante, et en fonction de l'option sélectionnée, la tâche est priorisée.
    2. Fournissez les détails du programme pour la tâche en sélectionnant l'une des options suivantes :
      • Une fois (immédiatement) : Sélectionnez cette option pour exécuter la tâche une fois (immédiatement).
      • Une fois (ultérieurement) : Sélectionnez cette option pour exécuter la tâche une fois (ultérieurement) et indiquez l'heure à laquelle elle doit être exécutée.
      • Répétition : Sélectionnez cette option pour exécuter une tâche plusieurs fois à la fréquence spécifiée. Si vous voulez spécifier une date de fin pour la tâche programmée, cochez la case Définir une date de fin.
    3. Sélectionnez l'une des options disponibles dans la liste déroulante Type de données d'identification pour spécifier les données d'identification de base de données à connecter à la base de données gérée. Pour plus d'informations sur les types de données d'identification, voir Utiliser les données d'identification pour effectuer des tâches de diagnostic et de gestion.
      Note

      • Si vous créez une tâche pour un groupe de bases de données, vous ne pouvez pas utiliser de données d'identification nommées et vous devrez sélectionner l'option Nouvelles données d'identification dans la liste déroulante Type de données d'identification et spécifier le nom d'utilisateur, la clé secrète du mot de passe de l'utilisateur et le rôle. En outre, lors de la création d'une tâche pour un groupe de bases de données, les données d'identification de base de données doivent s'appliquer à toutes les bases de données du groupe.
      • Lors de la création d'une tâche programmée (à exécuter une ou plusieurs fois), si le message Une politique est requise... s'affiche, cliquez sur Ajouter une politique pour voir la politique de principal de ressource qui accorde aux ressources de base de données gérée l'autorisation d'accéder à la clé secrète et de l'ajouter automatiquement. Le service IAM pour Oracle Cloud Infrastructure crée la politique et l'ajoute à une collection de politiques appelées DBMgmt_Resource_Policy dans le service IAM.
    4. Pour une tâche de type Interrogation, sélectionnez le seau du stockage d'objets dans lequel les résultats de la tâche seront stockés. La section Stockage d'objets Oracle pour les résultats de la tâche avec la liste déroulante Nom du seau s'affiche uniquement si vous avez sélectionné la tâche de type Interrogation. Le seau du service de stockage d'objets peut être dans le même compartiment que la tâche ou dans un autre compartiment, et vous devez avoir les autorisations requises pour le service de stockage d'objets pour sélectionner le seau.

      Lors de la création d'une tâche programmée (à exécuter une ou plusieurs fois), si le message Une politique est requise... s'affiche, cliquez sur Ajouter une politique pour voir la politique de principal de ressource qui accorde aux ressources de base de données gérée l'autorisation d'écrire les résultats de la tâche programmée dans un seau de stockage d'objets et de l'ajouter automatiquement. Le service IAM crée la politique et l'ajoute à une collection de politiques appelées DBMgmt_Resource_Policy dans le service IAM.

      Pour plus d'informations sur les sujets suivants :

    5. Cliquez sur Charger le code SQL pour charger la commande SQL ou entrez-la dans le champ Commande SQL. Si vous entrez une commande SQL, n'ajoutez de caractère de fin ; ou /.
    6. Pour les tâches de type Interrogation, DML et PL*SQL, ajoutez éventuellement des variables de liaison dans la section Variables de liaison. Si des variables de liaison sont utilisées en tant que paramètres fictifs qui doivent être remplacés par des valeurs valides pour l'exécution réussie de l'énoncé, cliquez sur Ajouter une variable de liaison et spécifiez les informations suivantes :
      1. Position : Sélectionnez la position de la variable de liaison.
      2. Type : Sélectionnez le type pour spécifier si la variable de liaison est une variable de type In-bind ou Out-bind.
      3. Type de données : Sélectionnez le type de données approprié.
      4. Type de tableau : Entrez le type de tableau pour les types de données Tableau de nombres et Tableau de chaînes. Notez que ce champ n'est pas affiché si vous sélectionnez Nombre, Chaîne ou CLOB dans le champ Type de données.
      5. Valeur : Entrez la valeur de la variable de liaison.

      Pour ajouter d'autres valeurs de variable de liaison, cliquez sur Ajouter une variable de liaison et fournissez les informations requises. Pour plus d'informations sur les variables de liaison, voir Variables de liaison et curseurs dans le guide de réglage SQL pour Oracle Database.

    7. Facultativement, cliquez sur Afficher les options avancées pour ajouter des marqueurs à structure libre ou définis à la tâche. Si vous avez les autorisations requises pour créer une tâche, vous êtes également autorisé à ajouter des marqueurs à structure libre. Pour ajouter un marqueur défini, vous devez être autorisé à utiliser l'espace de noms de marqueur.

      Pour plus d'informations sur les sujets suivants :

    8. Cliquez sur Créer une tâche.
La nouvelle tâche est listée dans l'onglet Définition de la section Tâches de la base de données ou du groupe de bases de données gérée. Le statut de la tâche est Actif si celle-ci est en cours d'exécution et Inactif si elle a déjà été exécutée.

Vous pouvez cliquer sur l'icône Actions (Actions) de la tâche et effectuer les opérations suivantes :

  • Voir les détails : Cliquez sur cette option pour aller à la page Détails de la tâche et voir les détails de la tâche, les exécutions et les instances d'exécution de la tâche, les bases de données gérées sur lesquelles la tâche est exécutée et les tâches liées aux marqueurs. Pour plus d'informations, voir Surveiller les exécutions et les instances d'exécution d'une tâche.
  • Cloner la tâche : Cliquez sur cette option pour cloner la tâche.
  • Modifier la tâche : Cliquez sur cette option pour modifier les détails des tâches répétitives programmées à l'état Actif.
  • Déplacer la tâche : Cliquez sur cette option pour déplacer la tâche du compartiment courant vers un autre compartiment.
  • Supprimer la tâche : Cliquez ici pour supprimer la tâche.

Dans l'onglet Exécutions de la section Tâches, vous pouvez voir les exécutions et les instances d'exécution d'une tâche. Les exécutions de tâche pour la période sélectionnée dans le champ Période sont affichées avec un aperçu du statut des instances d'exécution de la tâche : Réussite, Échec ou En cours. Vous pouvez cliquer sur les liens de statut pour filtrer les instances d'exécution par statut.

Note

Les exécutions de tâche pour les bases de données Oracle Cloud ont une limite de temps de 50 minutes. Si l'exécution de la tâche dépasse cette limite, elle échoue et une erreur s'affiche.

Vous pouvez créer des interrogations de mesure et des alarmes sur le statut d'exécution de la tâche dans le service Oracle Cloud Infrastructure Monitoring à l'aide de la mesure dbmgmtJobExecutionsCount. Pour plus d'informations, voir Mesures de diagnostic et de gestion pour les bases de données Oracle.

Voici un exemple d'interrogation que vous pouvez utiliser pour créer une alarme de tâche en échec :

dbmgmtJobExecutionsCount[1m]{managedDbId = "<OCID of the Oracle Database>", status = "Failed"}.mean()

Dans l'interrogation, la dimension managedDbId est utilisée pour vous aviser des tâches en échec pour la base de données gérée dont l'OCID est mentionné dans l'interrogation. De même, vous pouvez utiliser les dimensions suivantes :

  • managedDbGroupId : Pour être avisé des tâches en échec pour toutes les bases de données gérées d'un groupe de bases de données.
  • jobId : À aviser en cas d'échec d'une tâche particulière.

Pour plus d'informations sur la création d'une alarme, voir Création d'une alarme de base.

Surveiller les exécutions et les instances d'exécution d'une tâche

Vous pouvez surveiller les exécutions et les instances d'exécution d'une tâche soumise pour une base de données gérée ou un groupe de bases de données. Une instance d'exécution de tâche est créée pour chacune des bases de données gérées associées à la tâche. Une exécution est la somme des instances d'exécution d'une tâche spécifique à une date programmée.

Pour voir les exécutions et les instances d'exécution d'une tâche :

  1. Allez à la page Détails de la base de données gérée ou Détails du groupe de bases de données.
  2. Dans le volet de gauche sous Scope (Portée), assurez-vous que le compartiment dans lequel la tâche a été créée est sélectionné.
  3. Dans le volet gauche sous Ressources, cliquez sur Tâches.
  4. Dans la section Tâches, cliquez sur l'onglet Définitions, puis sur le nom de la tâche. Vous pouvez également cliquer sur l'icône Actions correspondante (Actions), puis sur Voir les détails.

La page Détails de la tâche s'affiche. Elle fournit les détails de la tâche, des exécutions et des instances d'exécution de la tâche, ainsi que les bases de données gérées sur lesquelles la tâche est exécutée. Dans cette page, vous pouvez effectuer des tâches telles que modifier, déplacer et supprimer la tâche et utiliser des marqueurs. En outre, vous pouvez surveiller chaque instance d'exécution de la tâche et son statut. Pour ce faire :

  1. Dans la section Exécutions de tâche, développez une exécution de tâche et cliquez sur un lien d'instance d'exécution.

    Le lien d'instance d'exécution de tâche a le format suivant :

    <Name of job>_<Name of Managed Database>_YYYY-MM-DD'T'HH:MM:SS.SSS
  2. Dans la page Détails de l'instance d'exécution de tâche, vérifiez les détails tels que le statut de l'instance d'exécution, l'énoncé SQL associé et la durée de l'instance d'exécution. Notez que la durée est le temps nécessaire à l'exécution de l'intégralité du flux d'exécution de la tâche, et pas seulement le temps nécessaire à l'exécution de l'énoncé SQL sur la base de données.
  3. Pour une tâche de type Interrogation, cliquez sur Télécharger la sortie pour télécharger la sortie de l'instance d'exécution de la tâche dans un fichier .txt.
    Note

    L'option Télécharger la sortie n'est disponible que pour les tâches de type Interrogation et vous ne pouvez utiliser cette option que si vous disposez des autorisations requises pour le service de stockage d'objets pour Oracle Cloud Infrastructure. Pour plus d'informations, voir Autorisations supplémentaires requises pour utiliser les diagnostics et la gestion.