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 SQL Server Discussion :

audit Serveur production


Sujet :

Administration SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    consultant BI
    Inscrit en
    Mai 2011
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suède

    Informations professionnelles :
    Activité : consultant BI
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2011
    Messages : 182
    Points : 95
    Points
    95
    Par défaut audit Serveur production
    Bonjour

    je souhaire faire un audit sur les requétes qui sont entrain d'étre s'executer sur le serveur de prdoduction
    pour cela je suis entrai d'exucter ce code qui me permet d'afficher les 50 Premier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT TOP 50 creation_time,   
    (total_elapsed_time - total_worker_time)AS [Total Blocked] ,   
    (total_elapsed_time - total_worker_time) / qs.execution_count AS [Avg Blocked],   
    total_worker_time/execution_count AS [Avg CPU Time],   
    SUBSTRING(st.text, (qs.statement_start_offset/2)+1,((CASE qs.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)   
    ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1) AS statement_text,query_plan   
    FROM sys.dm_exec_query_stats AS qs   
    CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st   
    CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle)  
    ORDER BY [Avg Blocked] DESC.2 Commentaires
    Afficher les 50 dernières requêtes les plus consommatrices de CPU

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT TOP 50 total_worker_time/execution_count AS [Avg CPU Time],   
    SUBSTRING(st.text, (qs.statement_start_offset/2)+1,((CASE qs.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)   
    ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1) AS statement_text   
    FROM sys.dm_exec_query_stats AS qs   
    CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st   
    ORDER BY total_worker_time/execution_count DESC;
    juste j'ai besoin de captuer le noN DE POSTE qui est entrain d'executer ces Requéte afin que je puisse Le bloquer merci pour votre aide

  2. #2
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Chreche autour du mot Hostname.

    Merci.
    मैं एक छात्र हूँ |

  3. #3
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    1/ merci de te relire avant de poster, ça fait mal aux yeux.

    2/ sys.dm_exec_query_stats ne donne pas les requêtes en train de s'exécuter, mais les requêtes exécutées auparavant, agrégées, et donc il n'y a pas de hostname.

    Les requêtes en cours d'exécution sont dans sys.dm_exec_requests

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT s.host_name, t.text, r.* 
    FROM sys.dm_exec_requests r
    JOIN sys.dm_exec_sessions s ON r.session_id = s.session_id
    CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) t
    WHERE s.session_id > 50
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

Discussions similaires

  1. Réponses: 8
    Dernier message: 22/02/2007, 13h29
  2. Réponses: 1
    Dernier message: 27/10/2006, 11h51
  3. Audit d'un serveur
    Par chaval dans le forum Sécurité
    Réponses: 12
    Dernier message: 20/04/2006, 09h06
  4. Réponses: 9
    Dernier message: 16/03/2006, 18h05
  5. [Exchange 2003] ouverture pop sur serveur en production
    Par thanathz dans le forum Exchange Server
    Réponses: 2
    Dernier message: 30/11/2005, 13h28

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