IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

Problème avec Datapump (oracle 10g)


Sujet :

Administration Oracle

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut Problème avec Datapump (oracle 10g)
    Bonjour.
    Je suis en Oracle 10.2.0.1.0 (sur Windows XP et aussi sur RedHat).
    J'ai 2 questions sur Datapump.

    Tout d'abord, je n'arrive pas à trouver la commande pour voir à quel répertoire est affecté le directory datapump. Pour créer le répertoire, ok, c'est "create directory datapump as 'xxx'", mais si on a oublié ce que l'on a mis comme répertoire et que l'on veut savoir à quel répertoire physique on a fait correspondre le répertoire logique datapump, comment on fait?

    Ensuite, j'essaye d'importer une table à partir d'un fichier d'export (fait avec datapump et même version). Je n'arrive pas à trouver pourquoi ça ne marche pas.
    J'arrive à faire des export et import sans problème sur Windows XP, mais sur RedHat ça ne marche pas (la différence c'est que sous Windows c'est moi qui ai installé la base, sur Linux non).
    Ma commande est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    impdp user/mdp directory=datapump dumpfile=monexport.dmp tables=matable
    Le résultat est le suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ORA-31626 : la tâche n'existe pas
    ORA-31637 : impossible de créer la tâche SYS_IMPORT_TABLE_01 pour l'utilisateur user
    ORA-06512 : à "SYS.DBMS_SYS_ERROR", ligne 95
    ORA-06512 : à "SYS.KUPV$FT_INT", ligne 600
    ORA-39080 : echec de création des files d'attente "" et "" pour la tâche data pump
    ORA-06512 : à "SYS.DBMS_SYS_ERROR", ligne 95
    ORA-06512 : à "SYS.KUPC$QUE_INT", ligne 1555
    ORA-01403: aucune donnée trouvée
    Quand j'essaye un import sans préciser la table, même style d'erreur.
    Quand je fais un export (full ou d'une table) pareil.

    Merci d'avance si vous avez une idée.

  2. #2
    Membre du Club Avatar de lmartin
    Inscrit en
    Avril 2008
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 61
    Points : 68
    Points
    68
    Par défaut
    Pour voir la définition de ton driectory :

    select * from dba_directories;

  3. #3
    Membre du Club Avatar de lmartin
    Inscrit en
    Avril 2008
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 61
    Points : 68
    Points
    68
    Par défaut
    Plus exactement dans ton cas :

    select * from dba_directories
    where directory_name='DATAPUMP'
    /

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    Merci pour ta réponse.
    Ca m'a permis de voir que le répertoire datapump pointait sur un répertoire physique inexistant.

    Par contre, même en créant ce répertoire, j'ai toujours les mêmes erreurs.
    Mon user a bien les droits exp_full_database, imp_full_database. Il a bien les droits de lecture et d'écriture dans le répertoire datapump.
    J'ai repassé le script ORACLE_HOME/rdbms/admin/catqueue.sql (réponse vu sur un forum ou une personne avait à peu près les mêmes erreurs que moi).
    Rien n'y fait.

  5. #5
    Invité
    Invité(e)
    Par défaut
    est-ce que ton fichier monexport.dmp existe bien ?
    Parce que si le répertoire n'existait pas, le fichier non plus, j'imagine...
    Donc il te faut le mettre dans le directory.

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    Oui il existe. Il était dans un autre répertoire (celui que je croyais être le "datapump"). Maintenant bien sur je l'ai copié dans le bon répertoire.
    Mais je savais que ce n'était pas ça le problème vu que j'ai le même style d'erreur quand j'essaye de faire un export avec la commande suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    expdp user/mdp directory=datapump dumpfile=monexport2.dmp full=yes
    A la différence près bien sur que la 2ème erreur porte sur la tâche SYS_EXPORT_FULL_01 à la place de SYS_IMPORT_TABLE_01.
    Je pense que c'est un problème de config pour utiliser le datapump, mais je n'arrive pas à trouver lequel.

  7. #7
    Membre éprouvé Avatar de 13thFloor
    Homme Profil pro
    DBA Oracle freelance
    Inscrit en
    Janvier 2005
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle freelance

    Informations forums :
    Inscription : Janvier 2005
    Messages : 670
    Points : 945
    Points
    945
    Par défaut
    Ne pas oublier le grant read,write on directory DATAPUMP to ton_utilisateur;
    A faire en tant que SYS.
    Sinon créé une nouvelle directory (en SYS) a laquelle du donnes les droits R,W.

  8. #8
    Membre éprouvé Avatar de 13thFloor
    Homme Profil pro
    DBA Oracle freelance
    Inscrit en
    Janvier 2005
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle freelance

    Informations forums :
    Inscription : Janvier 2005
    Messages : 670
    Points : 945
    Points
    945
    Par défaut
    Est-ce qu'un compte DBA peux utiliser datapump ?
    Si c'est le cas, la solution doit être :
    Grant select on ALL_USERS to PUBLIC;

    Voir note 438236.1 : Expdp Fails With ORA-31637 ORA-00942
    Il doit manqué un privilège.
    select * from dba_tab_privs where table_name='ALL_USERS';
    => pas bon si 0 ligne.

  9. #9
    Membre confirmé
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2007
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2007
    Messages : 419
    Points : 616
    Points
    616
    Par défaut
    existe-t-il sur la base des objets nommés SYSTEM appartenant à un autre propriétaire que SYSTEM? c'est un mot réservé qui peut invalider des objets d'advanced queuing et aussi certains composants de la table de queue SYS.KUPC$DATAPUMP_QUETAB qu'utilise datapump.

  10. #10
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    Avec le compte SYSTEM, ça ne marche pas non plus (même erreur).
    Les privilèges sont bons dans dba_tab_privs: j'ai une ligne, et surtout la même chose sur ma machine Windows (ou ça marche) et sur ma machine Linux.
    Sinon aucun objet avec le mot clé SYSTEM (j'ai vérifié dans all_objects).

  11. #11
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    Je viens de voir que j'ai plus de 500 objets invalid dans la table all_objects. Donc c'est mon instance de base de données qui est mal créée.
    Surtout que sur une autre instance sur la même machine, ça marche (et là aucun objet invalide).
    Donc je reconstruis ma base et ça devrait mieux marcher.
    Merci à tous.

  12. #12
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    Je viens de recréer mon instance de base de données.
    Je n'ai plus d'objets invalides dans all_objects, et ça marche.
    Je ne sais pas d'où venait le problème, surtout que j'ai utilisé les mêmes scripts pour construire mon instance. Mais l'important c'est que ça marche.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème connexion avec BD oracle 10g
    Par chniter dans le forum C#
    Réponses: 1
    Dernier message: 07/03/2011, 18h26
  2. Problème de connexion à Oracle 10g avec java1.5
    Par ELODIE2 dans le forum JDBC
    Réponses: 2
    Dernier message: 21/10/2006, 10h29
  3. Problème avec Message (Oracle 10g)
    Par Gouzoul dans le forum Oracle
    Réponses: 2
    Dernier message: 13/04/2006, 16h00
  4. Demarrer une instance avec ISQLPLUS (Oracle 10g)
    Par jpouil dans le forum Oracle
    Réponses: 3
    Dernier message: 22/03/2006, 06h09
  5. problème avec job oracle
    Par cyberyan dans le forum Oracle
    Réponses: 3
    Dernier message: 29/03/2005, 18h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo