Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Sql*Plus
Sql*Plus Forum d'entraide sur Oracle Sql*Plus
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 28/08/2006, 11h40   #1
Invité de passage
 
Inscription : mars 2002
Messages : 5
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : mars 2002
Messages : 5
Points : 0
Points : 0
Envoyer un message via MSN à llsn
Par défaut Probleme de connexion SQLPLUS

Bonjour à tous,
J'ai un petit soucis de fonctionne de SQLPLUS sous Unix. En effet ce dernier ne détecte pas lorsqu'il y a une déconnexion réseau. je détails:

J'ai créé cette petit procedure sur ma base Oracle 9.2.0:

Create or replace procedure TEST is
Begin
WHILE 1=1 LOOP
dbms_application_info.set_module(‘TEST’,to_char(sysdate,’DD/MM/YY HH24:MI:SS’));
dbms_lock.sleep(5);
END LOOP;
End;
/


Je l'execute depuis un client Unix ( je précise la base en le client sont sur 2 machines distincts):

execute test;

tout se déroule normalement jusqu'à maintenant.
Maintenant je me mets derriere machine qui contient ma base de test avec la procedure stocké test et je débranche le cable réseau de la machine.

Sur mon client rien ne change. Aucunes alertes m'indiquent que je ne suis plus connecté à ma base.

Sur ma machine contennant la base de donnée, je pousse le bouchon encore plsu loin, et j'arrête la base de donnée brutalement. une fois la base de donnée down, je rebranche le cable réseau.

Et là au magie , mon client n'a rien capter de tout ce que je venais de faire. Aucun messages n'apparaient.

Pour avoir un message d'erreur il me faut faire un Control + C pour voir apparaitre le message que j'attendais lors de la déconnection.

Est-ce que quelqu'un a déjà vu ce comportement et est-ce que qu'un à une solution pour détecter une deconnection du serveur avec sqlplus?

Pour info: j'ai trouvé la variable SQLNET.EXPIRE_TIME mais cela ne donne rien.

merci d'avance...
llsn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2006, 12h14   #2
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Citation:
Sur mon client rien ne change. Aucunes alertes m'indiquent que je ne suis plus connecté à ma base
Il y a peut-être un paramètre réseau TCP/IP à changer (pas forcément au niveau Oracle) ? Je ne sais pas si Oracle Net sait détecter qu'une connexion est coupée pour la requête en cours mais en général il sait le reconnaître lorsque vous allez envoyer une nouvelle requête.

Citation:
Pour info: j'ai trouvé la variable SQLNET.EXPIRE_TIME mais cela ne donne rien
Oui car le paramètre SQLNET.EXPIRE_TIME n'influe que sur la détection côté serveur de l'absence du client pour tuer les sessions côté serveur.
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2006, 12h28   #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
je crains que ce soit un bug... j'ai moi même déjà remarqué que SQL*Plus ne réagit pas du tout pendant l'exécution de code PL/SQL quand bien même la session serait tuée
orafrance 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 10h02.


 
 
 
 
Partenaires

Hébergement Web