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

 MySQL Discussion :

Qui a ouvert une table ?


Sujet :

MySQL

  1. #1
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut Qui a ouvert une table ?
    Bonjour

    Dans le cadre d'une application multi-utilisateurs, une opération spécifique demande d'avoir un accès exclusif à certaines tables d'une base.
    Je pense que si une table est ouverte par un client A, ouvrir la table en mode exclusif peut se faire grâce à l'aide de verrous.

    Mais si l'accès exclusif se révèle impossible, est-ce qu'il y a un moyen de savoir quel utilisateur travaille sur la table en question ?

    Est-ce qu'il y a un moyen simple de savoir qui fait quoi sans pour autant devoir mettre en place un système de surveillance ?

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 240
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 240
    Points : 8 516
    Points
    8 516
    Billets dans le blog
    17
    Par défaut
    Bonjour,

    L'utilisateur est défini à quel niveau / comment ?

  3. #3
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Suite aux conseils que l'on m'a donnés ici, chaque utilisateur de l'application aura un compte utilisateur dédié dans MySQL.
    Les droits seront réduits au nécessaire, ajout, insertion et suppression de données ainsi qu'exécution de fonctions ou procédures.

  4. #4
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 344
    Points : 39 742
    Points
    39 742
    Billets dans le blog
    9
    Par défaut
    Certains SGBD identifient et mentionnent dans la log le nom du thread concurrent qui a verrouillé la ressource, mais ce n'est malheureusement pas le cas de MySQL. Il reste la commande SHOW PROCESSLIST qui permet de visualiser les traitements en cours, pas terrible, mais mieux que rien

  5. #5
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Je pensais à quelque chose de plus simple mais bon, si rien n'est vraiment prévu, je vais essayer d'implémenter une gestion dans l'application cliente.

    Merci

  6. #6
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 344
    Points : 39 742
    Points
    39 742
    Billets dans le blog
    9
    Par défaut
    Attention, la gestion des accès concurrents ne sera jamais fiable à 100% coté application, seul le SGBD peut le faire.

  7. #7
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Je me doute bien que ce ne sera jamais parfait.
    Il faudra peut-être que j'utilise une autre solution. J'y réfléchis encore :-)

    Pour l'instant, le système utilise de vieux fichiers DBase. Facile pour savoir si quelqu'un utilise le fichier, pas très pratique pour savoir qui mais faisable quand même. Quand l'application passera en MySQL, il faudra que je vois comment faire un système "similaire".

  8. #8
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 344
    Points : 39 742
    Points
    39 742
    Billets dans le blog
    9
    Par défaut
    Dbase , ça me rappelle ma jeunesse , ça ne date pas d'hier ça, je ne savais pas que le produit existait encore !

  9. #9
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Il existe encore et a même évolué mais le logiciel sur lequel je travaille est toujours en DBase 4.
    Et je me bats avec un logiciel très mal foutu pour essayer de me débarrasser de ça.
    Pas simple du tout ... A tel point que j'en suis à la troisième tentative et que je profite de mon tout nouveau temps libre pour reprendre ça tranquillement sans la pression du patron ;-)

Discussions similaires

  1. Réponses: 4
    Dernier message: 26/08/2008, 17h11
  2. Ce qui est dans une table mais pas dans l'autre !
    Par youyoule dans le forum Requêtes
    Réponses: 4
    Dernier message: 30/12/2007, 12h57
  3. [SQL] fonction en php qui count() dans une table sql
    Par Draner dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 25/09/2007, 09h12
  4. Réponses: 2
    Dernier message: 16/02/2006, 23h09

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