Maison > base de données > Oracle > le corps du texte

Comment réparer la tâche planifiée Oracle a échoué 16 fois

下次还敢
Libérer: 2024-05-10 03:00:27
original
1213 Les gens l'ont consulté

Les raisons de l'échec de la tâche cron Oracle 16 fois peuvent inclure un package non valide, des autorisations utilisateur insuffisantes, une inactivité de la base de données ou des ressources insuffisantes. Les étapes de réparation comprennent : 1. Vérifier la validité du package ; 2. Vérifier les autorisations des utilisateurs ; 3. Vérifier l'état de la base de données ; 4. Surveiller l'utilisation des ressources ; 6. Réinitialiser les tâches planifiées ;

Comment réparer la tâche planifiée Oracle a échoué 16 fois

La tâche planifiée Oracle a échoué 16 fois

Cause du problème

La raison pour laquelle la tâche planifiée Oracle a échoué 16 fois peut être due aux problèmes suivants :

  • Exception de package non valide : Utilisation des tâches planifiées La procédure stockée ou la fonction a été modifiée, ce qui rend le package invalide.
  • Autorisations utilisateur insuffisantes : L'utilisateur exécutant la tâche planifiée n'a pas d'autorisations d'exécution sur l'objet appelant (comme une procédure stockée).
  • La base de données est inactive : La base de données est fermée ou indisponible, ce qui entraîne l'échec de l'exécution des tâches planifiées.
  • Ressources de base de données insuffisantes : Les tâches synchronisées nécessitent beaucoup de ressources, telles que le processeur ou la mémoire, mais la base de données est actuellement incapable de les fournir.
  • Autres exceptions : Toute autre exception causée par des conditions inattendues, telles que des erreurs ORA.

Étapes de correction

1. Vérifiez la validité du package

Exécutez la commande suivante à partir de l'invite de commande :

<code class="sql">SELECT object_name, status FROM dba_objects WHERE object_type='PACKAGE' AND status='INVALID';</code>
Copier après la connexion

Si vous trouvez des packages non valides, recompilez-les ou rechargez-les.

2. Vérifiez les autorisations de l'utilisateur

Utilisez la commande suivante pour vérifier les autorisations de l'utilisateur pour exécuter les tâches planifiées :

<code class="sql">SELECT granted_role FROM dba_role_privs WHERE grantee = '<user_name>';</code>
Copier après la connexion

Assurez-vous que l'utilisateur dispose des autorisations d'exécution sur les objets concernés.

3. Vérifiez l'état de la base de données

Vérifiez l'état de la base de données à l'aide de la commande suivante :

<code class="sql">SELECT open_mode FROM v$database;</code>
Copier après la connexion

Si le résultat est « LECTURE SEULEMENT » ou si la base de données est fermée, veuillez redémarrer la base de données.

4. Surveiller l'utilisation des ressources

Utilisez la commande suivante pour surveiller l'utilisation des ressources de la base de données :

<code class="sql">SELECT name, busy_time, wait_time, time_waited FROM v$active_session_history;</code>
Copier après la connexion

Si les tâches planifiées ont une forte demande de ressources, veuillez envisager d'optimiser le code ou d'augmenter l'allocation des ressources de la base de données.

5. Diagnostiquer les autres exceptions

Si les étapes ci-dessus ne résolvent pas le problème, vérifiez le fichier journal Oracle (/oracle/[db_name]/trace/[trace_file].dbf) pour d'autres exceptions.

6. Réinitialisez la tâche planifiée

Réinitialisez la tâche planifiée :

<code class="sql">BEGIN
  SYS.DBMS_SCHEDULER.DISABLE('<job_name>');
  SYS.DBMS_SCHEDULER.DROP_JOB('<job_name>');
END;
/</code>
Copier après la connexion

Recréez ensuite la tâche planifiée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!