Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/09/2007, 12h09   #1
Membre à l'essai
 
Inscription : octobre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 75
Points : 21
Points : 21
Par défaut supprimer un job

Bonjour ,
SGBD ORACLE 9.2
OS Win 2003 Server,

j'ai creé un job pour executer l'outil stat pack tt les jour à une heure fixe. Pour arreter son execution j'ai utilisé la fonction DBMS_JOB.BROKEN(N° job,TRUE) et ça a marché , le chamaps broken est passé à "Y",
mon probleme c'est que quand je veux le réactiver avec la mem commande DBMS_JOB.BROKEN(N° job,FALSE) ou de forcer son execution avec la fonction DBMS_JOB.RUN(N° job), ou mem de le supprimer avec la commande DBMS_JOB.remove(N° job) il me retourne l'erreur suivante :
Citation:
SQL> execute dbms_job.remove(21);
BEGIN dbms_job.remove(21); END;

*
ERREUR Ó la ligne 1 :
ORA-23421: le job numÚro 21 n'est pas un job de la file d'attente
ORA-06512: Ó "SYS.DBMS_SYS_ERROR", ligne 86
ORA-06512: Ó "SYS.DBMS_IJOB", ligne 529
ORA-06512: Ó "SYS.DBMS_JOB", ligne 171
ORA-06512: Ó ligne 1
la meme erreur est retourné avec l'utilisateur sys et perfstat,
merci
magboom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 00h07   #2
Rédacteur
 
Inscription : décembre 2002
Messages : 2 397
Détails du profil
Informations personnelles :
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : décembre 2002
Messages : 2 397
Points : 3 298
Points : 3 298
Bonjour

DBMS_JOB a la particularité que seul le créateur d'une tâche planifiée peut l'exécuter ou la modifier. Se connecter comme DBA ou SYSDBA n'y change rien.

Dans DBA_JOBS, quelle est la valeur de LOG_USER pour la tâche 21 ?
C'est sous ce compte qu'il faut se connecter pour pouvoir manipuler la tâche en question, et éventuellement la supprimer.
Ca c'est la méthode officielle.

Pour l'administrateur qui doit gérer des tâches planifiées appartenant à différents utilisateurs, la restriction sur le propriétaire décrite ci-dessus est franchement pénalisante.
On peut cependant s'en sortir à l'aide du paquetage DBMS_IJOB (noter le I dans le nom qui fait toute la différence), qui lui n'est pas soumis à cettre restriction et permet à quiconque se connecte en SYSDBA d'administrer toutes les tâches planifiées, qu'elles lui appartiennent ou non.

En complément sur DBMS_JOB et les problèmes de propriétaire, il est bon d'être informé que lors d'un import, les tâches planifiées deviennent la propriété du compte Oracle sous lequel on effectue l'import, indépendamment de leur propriétaire dans la base d'origine.
En clair, si SCOTT avait une tâche planifiée N°21, qu'on exporte la base et qu'on l'importe ailleurs en se connectant comme SYSTEM, c'est SYSTEM qui devient propriétaire de la tâche 21 (LOG_USER dans DBA_JOBS).
En revanche, le schéma d'exécution (colonne SCHEMA_USER) n'est pas altéré par l'import, c'est à dire que la procédure exécutée par cette tâche recherchera toujours ses objets dans le schéma SCOTT.
__________________
Consultant / formateur Oracle indépendant
Certifié OCP 10g et 11g, sécurité 11g
Pomalaix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 10h05   #3
Membre à l'essai
 
Inscription : octobre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 75
Points : 21
Points : 21
bonjour,
effectivement c'etait un problème de propietaire du job, j'ai consulté le champs Log_user et j'ai fait la manip sous ce compte et ça a marché !
merci de ton aide et pour toute les info précieuse que tu m'a donné !
A+
magboom est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h53.


 
 
 
 
Partenaires

Hébergement Web