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 :

Entrée disparue dans le tnsnames.ora


Sujet :

Connexions aux bases de données Oracle

  1. #1
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut Entrée disparue dans le tnsnames.ora
    Bonjour alors tout d'abord voila mon problème :

    j'avais une entrée comme cela dans mon tnsnames.ora :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    INSTANCEX =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = XXX.XXX.XXX.XXX)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = INSTANCEX)
        )
      )
    Donc configurée via l'IP (je sais c'est mal). Aujourd'hui une opération de restructuration des réseaux a eu lieu et le serveur hébergeant la base Oracle a changé d'IP. Mais pas physiquement, c'est juste qu'il est situé dans un autre réseau auquel nous accédons via une IP différente.

    J'aurai pensé que cette modification rendrait la résolution de l'instance impossible (et qu'il suffirait de modifier l'ip par le nom de l'host pour que ça remarche) et j'avais raison MAIS il s'est passé quelquechose d'imprévu !!

    Soit 4 ordinateurs dans le même bureau, les 4 ont été allumés le matin et n'ont pas été éteints durant le midi. A priori les 4 ont accédé à la base le matin.

    L'ordinateur 1 n'est plus capable d'accéder à l'INSTANCEX. Après analyse je m'aperçois que l'entrée de l'INSTANCEX a disparu du fichier tnsnames.ora. Je la ré-écris avec l'IP et ça ne marche pas plus. Je change l'ip par le nom de l'host et j'arrive à me connecter sur l'INSTANCEX.
    L'ordinateur 2 n'est plus capable d'accéder à l'INSTANCEX. Je m'aperçois que l'entrée de l'INSTANCEX n'a pas disparu du fichier tnsnames.ora et a toujours l'ip. Je change l'ip par le nom de l'host et j'arrive à me connecter sur l'INSTANCEX.
    L'ordinateur 3 est capable d'accéder à l'INSTANCEX. Je m'aperçois que l'entrée de l'INSTANCEX n'a pas disparu du fichier tnsnames.ora et a toujours l'ip. Je change l'ip par le nom de l'host et j'arrive aussi à me connecter sur l'INSTANCEX.
    L'ordinateur 4 est capable d'accéder à l'INSTANCEX. Mais je m'aperçois que l'entrée de l'INSTANCEX a disparudu fichier tnsnames.ora. Donc il est capable de se connecter au serveur SANS entrée dans le tnsnames.ora. Je le redémarre et l'entrée est toujours absente. Par contre il arrive toujours à se connecter. Je recrée l'entrée avec un nom d'host et je lance un TNSPING qui arrive à se connecter à l'instance en utilisant la résolution de nom. Je supprimer cette entrée et lance un TNSPING qui arrive à se connecter à l'instance en utilisant la résolution d'IP. Donc cet ordinateur garde en mémoire les informations de connection à INSTANCEX.

    Donc 4 ordinateurs, 4 comportements différents.

    Pour l'entrée disparue je pense que le driver Oracle a du décider de supprimer cette entrée en constatant que l'IP n'était pas valide dans le réseau (encore que ça m'étonne fortement ).

    Pour le 1 ok je comprend (avec le postulat du dessus), le 2 aussi, le 3 ok si on considère qu'un chemin réseau a été conservé. Mais alors le 4 ??!!

    Pour info :

    Serveur : 8i
    Client : 9i
    Et pour vous rassurer tout est rentré dans l'ordre. De toutes façons il fallait bien les corriger un jour ces entrées configurées en IP...
    Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 320
    Points : 3 798
    Points
    3 798
    Par défaut
    c'est quoi la question

    je plaisante , Oracle ne supprime Jamais une entrée dans le fichier TNSNAMES tout seul ,cela à du être soit fait à la main , soit si le processus de configuration graphique de résolution de nom a été lancée.

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    c'est encore un coup de David Copperfield

  4. #4
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 460
    Points : 8 074
    Points
    8 074
    Par défaut
    Je peine aussi à croire qu'Oracle ait supprimé tout seul des entrées dans le TNSNAMES.ORA.

    Concernant les machines qui parviennent encore à se connecter à la base, on peut envisager différentes explications :
    - usage de la variable d'environnement (ou en base de registre) TNS_ADMIN, qui ferait pointer sur une configuration centralisée et à jour
    - usage d'une résolution de noms autrement que par le TNSNAMES.ORA.
    Vérifier pour cela, sur chaque poste, la valeur du paramètre NAMES.DIRECTORY_PATH dans SQLNET.ORA.
    Consultant / formateur Oracle indépendant
    Certifié OCP 12c, 11g, 10g ; sécurité 11g

    Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration

  5. #5
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut
    Ok merci, je vais chercher pour le NAMES.DIRECTORY_PATH. Je pensais à quelquechose comme ça mais je n'avais pas d'idée particulière.

    Pour l'entrée disparue, je trouve ça TRES bizarre aussi mais :
    - le fichier n'a PAS été modifié à la main à ma connaissance (date et heure de modification ok et personne n'a avoué y avoir touché)
    - l'outil de configuration n'a PAS été lancé (enfin personne n'a avoué l'avoir fait).
    - personne dans les utilisateurs ni dans les techniciens ne savait que ce fichier existe...

    Vraiment je n'ai pas d'explication. L'entrée y était à midi et plus le soir... Ou alors... ou alors...
    ou alors l'entrée a disparue depuis un bon moment mais comme pour le poste 4, le système faisait la résolution sans le tnsnames.ora. Puis il s'est passé quelquechose et le système a perdu cette résolution particulière...

    Je vais enquêter sur les sqlnet.ora.

    Merci
    Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

  6. #6
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut
    Alors voici MA config (mon ordi n'a pas été impacté par le problème) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #SQLNET.ORA :
    SQLNET.AUTHENTICATION_SERVICES= (NTS)
     
    NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES)
    Voici la config qu'avait l'ordi 1 il y a quelques semaines, puis le SQLNET.ORA a été supprimé car il y avait incompatibilité entre 2 entrées du TNSNAMES.ORA et qu'on avait pas envie de cherche pourquoi () :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #SQLNET.ORA :
    NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
    NAMES.DEFAULT_DOMAIN = WORLD
    NAMES.DEFAULT_ZONE = WORLD
    AUTOMATIC_IPC = OFF
    Pareil pour l'ordi 2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #SQLNET.ORA :
     NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
     NAMES.DEFAULT_DOMAIN = WORLD
     NAMES.DEFAULT_ZONE = WORLD
     AUTOMATIC_IPC = OFF
    Voici la config de l'ordi 3, dont le SQLNET.ORA n'a PAS été désactivé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #SQLNET.ORA :
     NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
     NAMES.DEFAULT_DOMAIN = WORLD
     NAMES.DEFAULT_ZONE = WORLD
     AUTOMATIC_IPC = OFF
    Et je n'ai pas encore la config de l'ordi 4 (alors que c'est elle qui est importante). Il faudrait en fait que je comprenne un peu comment marche le SQLNET.ORA. J'ai toujours vu ça comme un fichier de config pour se simplifier la vie et uniformiser le comportement des ordinateurs d'une même société mais je ne sais pas vraiment à quoi il sert.

    EDIT :
    Voici la config de l'ordi 4, dont le SQLNET.ORA a été désactivé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #SQLNET.ORA :
    TRACE_LEVEL_CLIENT = OFF
      NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
      NAMES.DEFAULT_DOMAIN = WORLD
      NAMES.DEFAULT_ZONE = WORLD
      AUTOMATIC_IPC = OFF
    Donc rien de très spécial...
    Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

  7. #7
    Rédacteur

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 320
    Points : 3 798
    Points
    3 798
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
    sur les ordinateurs dans une fenêtre DOS faire un set et chercher la variable TNS_ADMIN

Discussions similaires

  1. Réponses: 13
    Dernier message: 11/03/2010, 11h29
  2. Réponses: 0
    Dernier message: 24/11/2009, 14h20
  3. Afficher bases Oracle dans DropDownList depuis fichier Tnsname.ora
    Par Tumbler dans le forum Accès aux données
    Réponses: 3
    Dernier message: 08/05/2008, 14h51
  4. pb de chaine hôte dans le TNSNAMES.ORA
    Par farenheiit dans le forum Connexions aux bases de données
    Réponses: 2
    Dernier message: 18/09/2007, 16h02
  5. Réponses: 2
    Dernier message: 05/09/2005, 09h45

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