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

Connexions aux bases de données Oracle Discussion :

problème de connexion simultanée à 2 BDD oracle


Sujet :

Connexions aux bases de données Oracle

  1. #1
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut problème de connexion simultanée à 2 BDD oracle
    Bonjour tout le monde,
    j'expose mon problème : dans mon projet actuel, j'utilise une base de données oracle. La difficulté maintenant réside dans le fait que j'aurais besoin de récupérer des données depuis une deuxième base de données oracle, distante cette fois ci. Ma chaine de connection à la BDD distante est la suivante, elle me semble correcte
    Data Source=RemoteServer;User Id=user;Password=password;
    quand je test la connection à la BDD distante j'ai le message d'erreur suivant:
    ORA-12154: TNS : l'identificateur de connexion indiqué n'a pas pu être résolu
    mon fichier TnsName contient :
    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )

    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    )
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    )
    )

    ORACLR_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    )
    (CONNECT_DATA =
    (SID = CLRExtProc)
    (PRESENTATION = RO)
    )
    )
    serait-il possible d'accéder simultanément à 2 BDD oracle. l'une installée sur ma machine et l'autre sur un serveur distant ?? si oui comment je peux le faire ??

    Merci d'avance et bonne chance à tout le monde.

  2. #2
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Il faut rajouter à votre fichier tnsnames.ora une entrée pour la 2ième base. Par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <base2> =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = <machine base2>)(PORT = <port du listener utilisé par base2>))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = <base2>)
    )
    )

  3. #3
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    Bonjour,
    Merci pour ta réponse. Sinon j'ai fait ce que tu m'as demandé, mais ca marche toujours pas.
    voici le tnsname après modification :

    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )

    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = Remoteserver)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )


    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    )
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    )
    )

    ORACLR_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    )
    (CONNECT_DATA =
    (SID = CLRExtProc)
    (PRESENTATION = RO)
    )
    )

  4. #4
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Même si la base distante a le même Oracle SID, il faut lui donner un nom différent pour le premier champ:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <XE2> =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = <machine XE2>)(PORT = <port du listener utilisé par XE2>))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = <XE>)
    )
    )

  5. #5
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    j'ai mis ceci

    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = aziz)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )

    RemoteXE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = RemoteServer)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )
    Mais ca marche toujours pas. Voici ma chaine de connexion j'ai mis en ASP.NET. Je l'ai spécifié dans le web.config :

    <add key="RemoteDBConnectionString" value="Data Source=RemoteServer;User Id=user;Password=password;" />

  6. #6
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Que donne:

    depuis la machine source ?

    Je ne connais pas ASP.Net mais j'essaierai:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    value="Data Source=RemoteXE;..."

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 316
    Points : 388
    Points
    388
    Par défaut
    au lieu de
    <add key="RemoteDBConnectionString" value="Data Source=RemoteServer;User Id=user;Password=password;" />
    essai
    <add key="RemoteDBConnectionString" value="Data Source=RemoteXE;User Id=user;Password=password;" />
    C'est a dire le nom céclaré dans le tnsname

  8. #8
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    Merci pour vos réponse.
    J'ai essayé le tnsping remoteXE, j'ai eu ceci :

    C:\oraclexe\app\oracle\product\10.2.0\server\BIN>tnsping RemoteXE

    TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-JUIN
    -2007 10:02:50

    Copyright (c) 1997, 2005, Oracle. All rights reserved.

    Fichiers de paramÞtres utilisÚs :
    C:\oraclexe\app\oracle\product\10.2.0\server\network\admin\sqlnet.ora


    Adaptateur TNSNAMES utilisÚ pour la rÚsolution de l'alias
    Attempting to contact (DESCRIPTION =
    TNS-12533: TNS : paramÞtres ADDRESS illÚgaux
    j'ai essayé également le :
    <add key="RemoteDBConnectionString" value="Data Source=RemoteXE;User Id=user;Password=password;" />
    mais toujours la meme erreur. Je pense qu'il connait pas l'adresse du serveur distant. dois-je mettre l'adresse IP du serveur distant au lieu du nom de la machine ?

  9. #9
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Si la commande
    ping RemoteServer
    ne marche pas, oui il faut mettre l'adresse IP.
    Il faut faire les vérifications dans cet ordre:

    1. ping <machine qui héberge la base XE2>
    2. tnsping XE2
    3. connexion ASP.Net

  10. #10
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    J'ai pu pinguer sur le server distant et j'ai mis l'@ Ip au lieu du nom de serveur :

    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = aziz)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )

    RemoteXE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.182)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )
    j'ai fait après un tnsping, j'ai eu l'erreur suivante :

    TNS-03505: Echec de la rÚsolution du nom
    Je sais si je devrais rajouter une ligne dans le listener concernant le serveur distant ?

  11. #11
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    C'est qui retourne TNS-03505 ?

  12. #12
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    En retestant j'ai eu l'erreur que j'ai en premier :

    C:\oraclexe\app\oracle\product\10.2.0\server\BIN>tnsping RemoteXE

    TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-JUIN
    -2007 12:34:46

    Copyright (c) 1997, 2005, Oracle. All rights reserved.

    Fichiers de paramÞtres utilisÚs :
    C:\oraclexe\app\oracle\product\10.2.0\server\network\admin\sqlnet.ora


    Adaptateur TNSNAMES utilisÚ pour la rÚsolution de l'alias
    Attempting to contact (DESCRIPTION =
    TNS-12533: TNS : paramÞtres ADDRESS illÚgaux
    Pourtant le ping se passe bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    C:\Documents and Settings\Salma>ping 192.168.0.182
     
    Envoi d'une requête 'ping' sur 192.168.0.182 avec 32 octets de données*:
     
    Réponse de 192.168.0.182*: octets=32 temps=7 ms TTL=128
    Réponse de 192.168.0.182*: octets=32 temps=3 ms TTL=128
    Réponse de 192.168.0.182*: octets=32 temps=3 ms TTL=128
    Réponse de 192.168.0.182*: octets=32 temps=3 ms TTL=128
     
    Statistiques Ping pour 192.168.0.182:
        Paquets*: envoyés = 4, reçus = 4, perdus = 0 (perte 0%),
    Durée approximative des boucles en millisecondes :
        Minimum = 3ms, Maximum = 7ms, Moyenne = 4ms

  13. #13
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Il semble qu'il soit obligatoire avec la 10g d'avoir le mot clé ADDRESS_LIST

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    RemoteXE =
    (DESCRIPTION =
    (ADRESS_LIST=
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.182)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )

  14. #14
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    Ca maaaarche

    je l'ai configuré avec l'assistant de configuration Oracle Net et j'ai réussi le test de connexion au serveur distant. Mais l'erreur que je faisais est banale je ai rajouté ce que vous m'avez demandé dans le tnsname du serveur et non pas celui du client est c'est pour cette raison que cela n'a pas marché. Je vous remercie beaucoup pour votre aide et pardon pour ce dérangement.

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

Discussions similaires

  1. Problème de connexion avec une BDD Oracle
    Par Drey242 dans le forum JDBC
    Réponses: 3
    Dernier message: 24/11/2010, 11h39
  2. Problème configuration : connexions simultanées
    Par chalumea dans le forum Installation
    Réponses: 0
    Dernier message: 28/07/2009, 11h25
  3. Connexion distante à une BDD oracle a partir d'un PC vista sans oracle
    Par flyper21 dans le forum Connexions aux bases de données
    Réponses: 4
    Dernier message: 06/08/2008, 09h45
  4. [Oracle] Problème de connexions simultanées différentes
    Par schnito dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 02/06/2006, 11h45
  5. [Tomcat]Problème de connexion simultanée en JSP/Tomcat
    Par shingo dans le forum Tomcat et TomEE
    Réponses: 11
    Dernier message: 09/01/2006, 09h00

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