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

SQL Oracle Discussion :

[Oracle 9i] FTL_UTL ne marche plus après un pénible reboot de la base


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 45
    Par défaut [Oracle 9i] FTL_UTL ne marche plus après un pénible reboot de la base
    Bonjour,

    J'ai crée une série de procédure avec l'utilisation du package utl_file

    Tout marchait nickel : fopen, création de fichier, écriture etc....

    Suite à un incident sur ma base TEST1; j'ai du redémarrer service/listerner... Depuis mes procédures ne marchent plus : utl_file lance une exception:
    Error -29280: ORA-29280: chemin de répertoire non valide

    Pourtant aucun droit d'accès n'a changé entre temps...

    Sur ce même serveur, j'ai une base TEST2 (moins fournie en données, je dois travailler sur TEST1 malgré tout), j'ai testé une même procédure avec utl_file => tout marche parfaitement bien...

    Comment réactiver le package utl_file sur TEST1? J'ai cru comprendre qu'il faut paramétrer dans le fichier init<SID>.ora, mais j'ai plusieurs fichier init*.ora, mais aucun initTEST1.ora...

    Merci pour votre aide

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    500
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 500
    Par défaut
    Important : quelle est ta version d'Oracle ?

    A tous les coups, la variable UTL_FILE_DIR a été modifiée à la main sans que cette modif ait été reportée dans le init.ora => au premier redémarrage de la base, la modif. est écrasée...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 45
    Par défaut
    C'est une version 9.2.0.8.0

    Ou ce trouve les fichier init.ora? Sont t'ils éditables via notepad?

    Merci

  4. #4
    Membre Expert Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Par défaut
    Si tu es sur unix il doit être dans $ORACLE_HOME/dbs, son nom doit être initTEST1.ora. Tu peux l'éditer à la main pour modifier le paramètre utl_file_dir et redémarrer ta base pour que ça soit pris en compte
    Mais attention à vérifier que tu n'utilises pas un spfile qui serait prioritaire par rapport à ton pfile au démarrage de la base
    La théorie, c'est quand on sait tout mais que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

    Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 103
    Par défaut
    Attention, si tu as un spfile, il ne faut pas le modifier à la main.

    Applique la modification à ta base en étant loggué en tant que sysdba et précise que tu veux appliquer la modification à la fois à l'instance et au fichier de conf à l'aide de l'instruction SCOPE=BOTH. Fait quelques recherches sur les fichiers d'init, tu devrait trouvé ton bonheur

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 45
    Par défaut
    Bonjour merci pour vos réponses


    J'ai fais une recherche sur le paramétrage de utl_file_dir avec la commande:

    SELECT value FROM v$parameter WHERE name LIKE '%utl_file_dir%';
    > D:\Partage\Olivier

    J'ai essayé de faire un
    ref_fichier := UTL_FILE.FOPEN('D:\Partage\Olivier','resultat.txt','w'); (avant j'écrivais dans D:\temp')
    et la ca marche, le fichier est bien crée, je n'ai plus l'erreur
    Error -29280: ORA-29280: chemin de répertoire non valide

    faut il que je lance, en admin system, la commande :
    ALTER SYSTEM SET UTL_FILE_DIR=*

    Afin d'avoir
    SELECT value FROM v$parameter WHERE name LIKE '%utl_file_dir%';
    > *

    Pour créer un fichier n'importe où avec UTL_FILE.FOPEN

    J'ai peur de tout casser dans ma base

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/05/2009, 19h38
  2. Réponses: 9
    Dernier message: 26/11/2008, 15h48
  3. Réponses: 6
    Dernier message: 02/06/2008, 10h17
  4. [Classloader]mon progr ne marche plus après modif des *.class
    Par Melchisedec dans le forum API standards et tierces
    Réponses: 16
    Dernier message: 30/04/2006, 20h48
  5. [.net] keypress marche plus après click
    Par noinneh dans le forum MFC
    Réponses: 1
    Dernier message: 24/02/2006, 16h45

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