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

Administration MySQL Discussion :

Logs requêtes MySQL par utilisateur


Sujet :

Administration MySQL

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Logs requêtes MySQL par utilisateur
    Bonjour,

    Ma question est assez basique, mais malheureusement après de multiples recherches je n'ai pas pu trouver de solution. Je suis administrateur de bases de données depuis peu. Le management des droits d'accès ne me pose pas de problème, mais voila, il s'agit de tracer l'activité sur mon serveur. J'ai pu tomber sur un truc du type log = [path]/filename.log et SET GLOBAL general_log = 'ON'; mais malheureusement ce type de procédure log absolument toute l'activité sur le serveur. Il s'agit d'un serveur avec de nombreuses requêtes automatisées, il m'est donc impossible d'établir un contrôle et un suivi par utilisateur. J'ai très brièvement entendu parler de relais possible avec un proxy, mais débarquant dans le développement web depuis quelques semaines seulement (C++ ftw) je n'y connais pas grand chose, et je me trouve dans une impasse.

    Mon but est simple :

    Sortir un fichier de log par utilisateur, en appliquant un filtre sur les requêtes automatisées et les requêtes exécutées manuellement. Je ne sais même pas si c'est possible, en tout cas votre aide me serait excessivement précieuse. Désolé si j'ai loupé quelque chose dans l'édition de mon message, c'est mon premier sur ce forum. J'ai essayé d'être précis au mieux, si vous avez des questions supplémentaires n'hésitez pas !

    Merci d'avance !

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Ce que tu cherches à faire est un "audit trailing". Il existe un produit pour ce faire :
    http://www.mysql.com/products/enterprise/audit.html
    C'est assez embryonnaire chez MySQL, comparativement à ce que tu trouves en natif sur SQL Server ou Oracle. De plus cela nécessite la version payante de MySQL (Enterprise...) et c'est cher !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup de ta réponse ! N'existe-t-il pas une solution gratuite, même scriptable, permettant d'établir un contrôle sur les utilisateurs via une version gratuite de MySQL ? Disposant de peu de moyens, malheureusement, je préfère me prendre un petit peu la tête que de débourser des milles et des cents :/

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Non... MySQL c'est le piège à c...
    N'oubliez pas que ce n'est pas de l'open source, même si Oracle le clame haut et fort !

    Pourquoi ne pas migrer vers PostGreSQL. Vous aurez à la foi la gratuité, la performance, et des outils périphériques, la plupart gratuits !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Parce que malheureusement (oui encore), l'infrastructure sur laquelle je travaille est déjà configurée pour MySQL, et le projet étant d'une ampleur énorme (sans exagérer), il sera difficile de tout convertir. Je pars dans l'idée de coder un programme en C# qui tournera en fond sur la machine host, se connectera à la DB en question et étudiera les modifications de champs en temps réel pour reconstruire derrière une requête correspondant à la modification effectuée. Avec un examen des connexions à ce moment, je pourrai probablement définir le user, et sortir un fichier .log toutes les 24 heures ne devrait pas être trop difficile. Ça représente une sacrée charge de travail, et c'est justement ce que je voulais éviter, mais il semble que je n'aie pas le choix. Merci pour votre aide ! Si vous avez une autre idée, je vous en prie, n'hésitez pas à m'en faire part

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par JeyelDev Voir le message
    Parce que malheureusement (oui encore), l'infrastructure sur laquelle je travaille est déjà configurée pour MySQL, et le projet étant d'une ampleur énorme (sans exagérer), il sera difficile de tout convertir. Je pars dans l'idée de coder un programme en C# qui tournera en fond sur la machine host, se connectera à la DB en question et étudiera les modifications de champs en temps réel pour reconstruire derrière une requête correspondant à la modification effectuée. Avec un examen des connexions à ce moment, je pourrai probablement définir le user, et sortir un fichier .log toutes les 24 heures ne devrait pas être trop difficile. Ça représente une sacrée charge de travail, et c'est justement ce que je voulais éviter, mais il semble que je n'aie pas le choix. Merci pour votre aide ! Si vous avez une autre idée, je vous en prie, n'hésitez pas à m'en faire part
    Par expérience je vous fais le pari que :
    1) si vous y arrivez et que vous tracez tout sans oubli, je vous offre le champagne et le coût sera bien supérieur à l'achat de la licence !
    2) vous n'y arriverez pas compte tenu de la complexité et de la surcharge en ressource que vous allez mettre sur le serveur MySQmerde !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Mon but est simple :

    Sortir un fichier de log par utilisateur, en appliquant un filtre sur les requêtes automatisées et les requêtes exécutées manuellement.
    Quand vous parlez d'utilisateur, s'agit-il :
    - des différents utilisateurs MySQL qui utilisent la même base de données ?
    - des différents utilisateurs MySQL qui utilisent des bases de données différentes ?
    - des différents utilisateurs de l'application (ou des applications) qui utilisent une seule ou plusieurs bases de données du serveur ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Premier choix, je parle des différents utilisateurs MySQL qui seront amenés à utiliser la même base de données (une gestion de plusieurs bases de données serait potentiellement intéressante, mais pour le moment mes développeurs n'auront accès qu'à une des bases de données).

    SQLPro : Merci pour les encouragements, je vous enverrai mon adresse pour le champagne ! ^^

Discussions similaires

  1. Bases de données MySQL par utilisateur Linux
    Par bnadem35 dans le forum Installation
    Réponses: 0
    Dernier message: 27/05/2010, 16h33
  2. Requête - saisie par utilisateur
    Par Poisell dans le forum Sécurité
    Réponses: 2
    Dernier message: 30/04/2009, 10h19
  3. [Log4] Produire un fichier de log par utilisateur
    Par hugo123 dans le forum Logging
    Réponses: 2
    Dernier message: 11/08/2006, 15h59
  4. [MySQL] dernieres entrees par utilisateur
    Par bourvil dans le forum Langage SQL
    Réponses: 8
    Dernier message: 01/05/2006, 16h02
  5. Réponses: 44
    Dernier message: 14/03/2005, 09h43

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