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

Oracle Discussion :

Oracle 10g, communication entre deux sessions différentes


Sujet :

Oracle

  1. #1
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Points : 1 197
    Points
    1 197
    Par défaut Oracle 10g, communication entre deux sessions différentes
    Bonjour,

    Est ce que c'est possible de communiquer entre deux sessions différentes
    avec deux users différents

  2. #2
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    oui.
    par exemple avec des variables de package.

    que souhaitez-vous faire ?

  3. #3
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Points : 1 197
    Points
    1 197
    Par défaut
    salut,

    par exemple quand un user dans une session lock données, est ce que c'est possible de connaitre lca session et de communiquer avec lui ( user) ?

  4. #4
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Connaitre la session, oui : v$lock, dba_waiters, dba_blockers, ...

    Communiquer avec lui pour lui dire "et oh, mec, commit ou rollback, mais fait quelque chose, tu nous les brises" non, pas d'un point de vue Oracle.
    Surtout que la session peut-être une session SQL*Plus, Web, liée à des opérations de maintenance sur la table, un job, ...

    Enfin, le package DBMS_PIPE le permet, mais c'est pas trivial et surtout faut que les deux sessions soit "conçues" pour communiquer avec pipe !

  5. #5
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Points : 1 197
    Points
    1 197
    Par défaut
    Salut ,

    Je te remercie LeoAnderson

  6. #6
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    en admettant que tu instrumentes correctement ton application

    l'utilisateur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SQL> exec dbms_application_info.SET_ACTION('Je loque a tout vent') 
     
    PL/SQL procedure successfully completed.
     
    SQL> exec dbms_application_info.SET_CLIENT_INFO('Mon telephone est le 01 23 45 67')
     
    PL/SQL procedure successfully completed.
    toi le DBA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SQL>  select username,client_info,action from v$session where action like '%loq%';
     
    USERNAME CLIENT_INFO                      ACTION
    -------- -------------------------------- --------------------------------
    SCOTT    Mon telephone est le 01 23 45 67 Je loque a tout vent
    Et tu décroches ton portable


    Un peu trop simple?

    Bon, si tu es dans Unix, tu peux toujours faire quelque chose du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SQL>  select username,terminal from v$session where action like '%loq%';
     
    USERNAME TERMINAL
    -------- ------------------------------
    SCOTT    pts/1
    puis en tout que root

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    # echo degage tout de suite de mes plates-bandes > /dev/pts/1
    ou aussi alter system kill session si t'es vraiment faché!

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/06/2011, 18h27
  2. [Oracle 10G] Difference entre deux heures
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 1
    Dernier message: 26/03/2007, 17h34
  3. communication entre deux executables
    Par semenzato dans le forum MFC
    Réponses: 8
    Dernier message: 13/04/2005, 22h19
  4. Communication entre deux Threads
    Par rvzip64 dans le forum Langage
    Réponses: 13
    Dernier message: 28/01/2005, 09h14
  5. Réponses: 5
    Dernier message: 25/03/2003, 19h43

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