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

MS SQL Server Discussion :

[SQL2012] Type de blocages /lock


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2008
    Messages : 699
    Par défaut [SQL2012] Type de blocages /lock
    Bonjour,

    voilà j'utilise le script suivant pour voir les lock en cours, et je désire l’étendre pour savoir si il s'agit d'un lock de type Ligne, Page ou Table

    En parcourant le web je ne trouver rien de valable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    SELECT 
             SessionID = s.Session_id,
             resource_type,   
             DatabaseName = DB_NAME(resource_database_id),
             request_mode,
             request_type,
             login_time,
             host_name,
             program_name,
             client_interface_name,
             login_name,
             nt_domain,
             nt_user_name,
             s.status,
             last_request_start_time,
             last_request_end_time,
             s.logical_reads,
             s.reads,
             request_status,
             request_owner_type,
             objectid,
             dbid,
             a.number,
             a.encrypted ,
             a.blocking_session_id,
             a.text  , 
             L.resource_associated_entity_id    ,
             t.NAME
         FROM   
             sys.dm_tran_locks l
             JOIN sys.dm_exec_sessions s ON l.request_session_id = s.session_id
             LEFT JOIN   
             (
                 SELECT  *
                 FROM    sys.dm_exec_requests r
                 CROSS APPLY sys.dm_exec_sql_text(sql_handle)
             ) a ON s.session_id = a.session_id
             INNER JOIN SYS.tables T ON L.resource_associated_entity_id  = T.object_id
         WHERE  
             s.session_id > 50
    ORDER BY t.name

  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
    22 001
    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 : 22 001
    Billets dans le blog
    6
    Par défaut
    Tout d'abord ce n'est pas sur les tables qu'il faut jouer mais sur les index (pour les verrous non schémas). En effet il est rare dans une base bien indexée que toutes les lectures/écritures se fassent uniquement sur les tables.
    Ensuite la colonne resource_type de dm_tran_locks vous donne les infos de granularité :
    DATABASE => la base
    FILE => un fichier de la base
    OBJECT => un objet (table, vue...)
    PAGE => une page
    KEY => une ligne par sa clef clustered
    EXTENT => une extension (bloc de 8 pages contiguës)
    RID => une ligne physique
    APPLICATION => une application
    METADATA => méta données
    HOBT => segment mémoire / arbre
    ALLOCATION_UNIT => unité d'allocation

    resource_subtype vous donne le complément (index par exemple)

    enfin resource_description vous donne la référence de l'objet.

    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
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    Vous pouvez vous inspirer de la procédure stockée que je viens de publier

    @++

Discussions similaires

  1. erreur de type Lock wait timeout exceeded
    Par mounir.housni dans le forum Hibernate
    Réponses: 4
    Dernier message: 17/08/2010, 14h17
  2. Réponses: 1
    Dernier message: 01/03/2010, 19h59
  3. probléme lors de changement du lock type
    Par dj_techno dans le forum Bases de données
    Réponses: 1
    Dernier message: 18/12/2008, 16h45
  4. blocage pc si recherche info sur type de fichiers
    Par blandinais dans le forum Windows XP
    Réponses: 3
    Dernier message: 04/12/2006, 16h10
  5. Explication des types de lock
    Par sygale dans le forum SQL
    Réponses: 5
    Dernier message: 12/04/2006, 18h07

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