Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Connexions aux bases de données
Connexions aux bases de données Forum d'entraide sur les problèmes de connectivité Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/05/2006, 16h28   #1
Membre Expert
 
Avatar de nuke_y
 
Inscription : mai 2004
Messages : 1 812
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 1 812
Points : 1 609
Points : 1 609
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 :
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 :

Citation:
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.

Mon combat pour les droits des consommateurs face aux abus des grandes marques.
nuke_y est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/05/2006, 19h40   #2
Rédacteur/Modérateur
 
Inscription : janvier 2005
Messages : 2 320
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 320
Points : 2 368
Points : 2 368
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.
Jaouad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/05/2006, 20h01   #3
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
c'est encore un coup de David Copperfield
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/05/2006, 21h38   #4
Rédacteur
 
Inscription : décembre 2002
Messages : 2 396
Détails du profil
Informations personnelles :
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : décembre 2002
Messages : 2 396
Points : 3 294
Points : 3 294
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.
Pomalaix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2006, 11h49   #5
Membre Expert
 
Avatar de nuke_y
 
Inscription : mai 2004
Messages : 1 812
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 1 812
Points : 1 609
Points : 1 609
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.

Mon combat pour les droits des consommateurs face aux abus des grandes marques.
nuke_y est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2006, 14h45   #6
Membre Expert
 
Avatar de nuke_y
 
Inscription : mai 2004
Messages : 1 812
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 1 812
Points : 1 609
Points : 1 609
Alors voici MA config (mon ordi n'a pas été impacté par le problème) :
Code :
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 :
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 :
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 :
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 :
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.

Mon combat pour les droits des consommateurs face aux abus des grandes marques.
nuke_y est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2006, 18h27   #7
Rédacteur/Modérateur
 
Inscription : janvier 2005
Messages : 2 320
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 320
Points : 2 368
Points : 2 368
Code :
  NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
sur les ordinateurs dans une fenêtre DOS faire un set et chercher la variable TNS_ADMIN
Jaouad est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h25.


 
 
 
 
Partenaires

Hébergement Web