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 :

Création d'un DIRECTORY pointant sur une autre machine


Sujet :

Administration Oracle

  1. #1
    Membre habitué
    Inscrit en
    Octobre 2007
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 401
    Points : 153
    Points
    153
    Par défaut Création d'un DIRECTORY pointant sur une autre machine
    Salut,

    J'ai une appli qui utilise une base Oracle. Cette appli se trouve sur le serveur APP_SERVER.
    Ma base de données Oracle se trouve sur ma machine SERVEUR.
    J'ai une table qui possède un BLOB. Je veut que ce BLOB contiennent les données d'un fichier qui se trouve sur ma machine APP_SERVER.
    Les 2 machines APP_SERVER et SERVEUR sont des machines Windows.
    C'est pourquoi j'ai crée un objet DIRECTORY pointant sur un répertoire qui se trouve sur ma machine APP_SERVER:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE OR REPLACE DIRECTORY FILES AS '\\\\APP_SERVER.grp.fr\\map\\files';
    Le répertoire partagé map/files existe sur ma machine APP_SERVER et contient le fichier t.pdf et possède les permissions de lecture et écriture.

    Cependant, lorsque j'essaye d'insérer mon fichier t.pdf dans la table de ma base de données, j'obtient l'erreur suivante:

    ORA-22288: file or LOB operation FILEOPEN failed
    The system cannot find the file specified.
    L'erreur se produit lorsque la dernière ligne du code suivant est exécuté:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ...
    INSERT INTO fichiers VALUES(pn_id_i, EMPTY_BLOB(), SYSDATE)  RETURNING pdf INTO vblob;
    vbfile := bfilename(directory => 'FILES', filename => 't.pdf');
    dbms_lob.fileopen(vbfile);
    ...
    Quelqu'un peut-il m'aider à ce sujet?

    merci

  2. #2
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    comment se fait-il que tu as autant de \ ?

    t'as essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE OR REPLACE DIRECTORY FILES AS '\\APP_SERVER.grp.fr\map\files';
    et tu as bien granté READ sur le directory ?

    Aussi, le service doit être lancé par un compte identifié et pas local system account il me semble.

    d'après Metalink :
    1. Use UNC naming convention (\\<server>\<sharepoint>) on CREATE DIRECTORY command.
    For example: CREATE DIRECTORY dump_dir AS '\\mk0510backup\dumpRAC$\DUMPS\DP';
    2. Shut down the database.
    3. Stop the listener.
    4. Modify the instance service (OracleService<SID>) to run as OS account that has the appropriate privileges to access the mapped network disk.
    5. Modify the listener service to run as the same account.
    6. Start the instance service and the database.
    7. Start the listener service.
    If after 7, the DB or the listener didn't start appropriately, then Reboot the machine.

  3. #3
    Membre habitué
    Inscrit en
    Octobre 2007
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 401
    Points : 153
    Points
    153
    Par défaut
    Les '\' en trop c'est que j'ai ait un copy/paste de ce que j'avais écris mais la valeur du directory est bien correcte dans la bd: '\\app_server.grp.fr\map\files'

    CREATE OR REPLACE DIRECTORY FILES AS '\\delporte.crpgl.lu\map\infodem';

    Dans le doute, j'ai même donné tous les droits à l'utilisateur:

    GRANT ALL ON DIRECTORY FILES TO usr;

    Je n'ai pas fait cette dernière partie, mais je vais le faire.

    Merci pour ton aide. J'espère que ça marchera après avoir fait un shutdown de la base de données.

    Citation Envoyé par orafrance Voir le message
    comment se fait-il que tu as autant de \ ?

    t'as essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE OR REPLACE DIRECTORY FILES AS '\\APP_SERVER.grp.fr\map\files';
    et tu as bien granté READ sur le directory ?

    Aussi, le service doit être lancé par un compte identifié et pas local system account il me semble.

    d'après Metalink :

  4. #4
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    Bonsoir,
    je suis confrontée au meme probleme , comment faire pour faire cela
    4. Modify the instance service (OracleService<SID>) to run as OS account that has the appropriate privileges to access the mapped network disk.
    5. Modify the listener service to run as the same account.
    je suis encore debutante alors..

  5. #5
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    dans les options du service windows

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    Bonjour,
    mais comment configurer cela ( compte distant ) dans les services ?
    au faite j'ai essayé de faire : compte : utilisateur@nom_ordinateur, ca passe pas

  7. #7
    Membre éprouvé Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Points : 931
    Points
    931
    Par défaut
    Salut,
    est-ce qu'il ne serait pas plus simple de mapper une lettre de lecteur sur le serveur source pour pointer vers la cible ?
    de cette manière le Directory pointerait vers ce lecteur de la même manière que sur un disque local...

  8. #8
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    Citation Envoyé par Yorglaa Voir le message
    Salut,
    est-ce qu'il ne serait pas plus simple de mapper une lettre de lecteur sur le serveur source pour pointer vers la cible ?
    de cette manière le Directory pointerait vers ce lecteur de la même manière que sur un disque local...
    non, ça ne fonctionne pas

    xanthie double-clique sur le service onglet Log On

  9. #9
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    vous parlez de ca ? ( PJ )
    comment lui indiquer que c'est compte d'un ordinateur distant ?
    parce que lorsque j'ai fait : utilisateur@nomPC ca n'a pa marché, il dit que ce compte est introuvable
    Images attachées Images attachées  

  10. #10
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    tu saisis le compte avec lequel tu te connectes à la machine

  11. #11
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    justement j'ai essayé de faire cela, mais on m'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    le nom n'est pas valide ou n'existe pas
    je pense qu'il fait la recherche des comptes locaux
    et puis lorsque j'ai mis mon compte avec lequel je me connecte , la bse de données veut plus demarrer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    L'échec d'une ouverture de session a empêché le démarrage du service.
    comment faire pour que la connexion vers le pc distant passe ?

  12. #12
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    Bonjour,
    voila ce que j'ai trouvé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     add a share on your local NT machine called testshare and grant access to
     
    public to that directory
     
    - copy a file into that directory
     
    - add the following parameters to the registry using regedt32:
     
    \\hkey_local_machine\system\currentcontrolset\services\lanmanserver\parameters\
     
    RestrictNullAccess -> 0
     
    \\hkey_local_machine\system\currentcontrolset\services\lanmanserver\parameters\
     
    NullSessionShares -> < share-name>
     
    (see also:
     
    for a full description of those parameters)
     
    - reboot the PC
     
    - connect to the database under the SYS account
     
    - create a directory called ex24_dir pointing to the share name
     
    - grant all on that directory to public;
     
    - connect to scott
     
    - insert into a table with a bfile column a row pointing to the file in the
     
    shared directory
     
    - select the row from the table and try to open the file in read-only mode
     
    with dbms_lob.fileopen
    je l'ai essayé , mais j'obtiens tjrs la meme erreur .
    au faite , ces instructions changeront pas du windows NT à windows XP ? vu que la clé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    \\hkey_local_machine\system\currentcontrolset\services\lanmanserver\parameters\
     
    RestrictNullAccess
    ne figure pas dans mon registre ?

  13. #13
    Membre éprouvé Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Points : 931
    Points
    931
    Par défaut
    Citation Envoyé par xanthie Voir le message
    vous parlez de ca ? ( PJ )
    comment lui indiquer que c'est compte d'un ordinateur distant ?
    parce que lorsque j'ai fait : utilisateur@nomPC ca n'a pa marché, il dit que ce compte est introuvable
    pour le nom d'utilisateur, si tu es dans un domaine je pense qu'il faut mettre
    NOMDUDOMAINE\UserName

  14. #14
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    je suis en workgroup

  15. #15
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    je ne suis pas certains que ce soit possible si l'accès doit être ouvert par un mot de passe... en effet, si le compte n'est pas dans un domaine, je ne vois pas comment l'indiquer

  16. #16
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    j'ai essayé de le modifier par un utilisateur locale ( deja parce que je peux visualiser les fichiers partagés sur les autres machines , donc ce compte aura le meme pouvoir que le compte distant)
    le probleme est que le service oracle et son listener n'acceptent aucun compte (exemple : administrateur de la machine locale... ) et reffusent de demarrer . et ne fonctionnent que lorsque je coche : compte systeme local dans l'onglet connexion de ces deux services
    je sais pas pourquoi...

  17. #17
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    quelle est la version ?

  18. #18
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    10 g version express

  19. #19
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    ça vient très probablement de là (ça aurait été bien de commencer par le préciser ), t'as plus qu'à lire les limitations de 10g XE maintenant

  20. #20
    Nouveau membre du Club
    Inscrit en
    Février 2008
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    que faire alors ?
    ya pas d'autres alternatives ?
    http://www.developpez.net/forums/arc...p/t-16787.html
    il doit y avoir un moyen..

Discussions similaires

  1. Directory Oracle sur une autre machine
    Par Pacman23 dans le forum Administration
    Réponses: 3
    Dernier message: 18/04/2008, 16h16
  2. Jar excutable problématique sur une autre machine
    Par lars528 dans le forum Général Java
    Réponses: 8
    Dernier message: 23/08/2006, 10h49
  3. Réponses: 3
    Dernier message: 07/07/2006, 15h49
  4. comment faire fonctionner l'exe sur une autre machine
    Par brian79 dans le forum C++Builder
    Réponses: 8
    Dernier message: 28/05/2004, 14h00
  5. Lancer un programme, mais sur une autre machine
    Par GOUGOU1 dans le forum Réseau
    Réponses: 12
    Dernier message: 08/12/2002, 20h36

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