Voici une procédure stockée qui permet de lister les verrous en cours dans une instance SQL Server
Archives pour la catégorie Utilitaires
Les Événements Étendus avec SQL Server 2008
Je viens de publier un article sur les Événements Étendus avec SQL Server 2008.
Je tiens à remercier Mikedavem pour ses encouragements, la relecture et l’aide à la publication.
Je remercie également toute l’équipe de Développez.com pour la mise à disposition de la plateforme de publication.
Voici le menu :
I. Architecture logique des XE, où sont décrits ce que sont les packages, les événements, les cibles, les actions, les prédicats, les « maps », et enfin les types
II. Gestion des sessions d’XE avec les vues et fonctions de gestion dynamique, qui donne le détail et les requêtes pour gérer les sessions XE
III. Quelques exemples guidés (3 au total)
IV. Le futur avec SQL Server 2012 : une brève section sur les améliorations apportées par SQL Server 2012 concernant les XE
V. Avantages et inconvénients de l’utilisation des XE : une liste de ce qu’apportent les XE, et de leurs (rares à mon avis) freins à leur adoption
Bonne Lecture à tous et merci de vos commentaires
Une requête pour connaître l’utilisation des index (et leur définition) : la DMV sys.dm_db_index_usage_stats
Voici une requête qui retourne l’utilisation des index avec leur définition, sur un schéma et/ou une table ou vue indexée et/ou une base de données :
Connaître la taille du cache allouée aux bases de données et à leurs tables avec SQL Server 2005 et suivants
Voici quelques requêtes qui montrent la taille du cache de données allouée aux tables (et vues indexées) :
– pour toute l’instance SQL Server,
– par base de données
– par table (ou vue indexée) dans une base de données en particulier
Consulter ou télécharger les documentations de SQL Server
Ma signature étant devenue trop longue pour référencer les liens vers la documentation de SQL Server pour ses dernières versions, je les regroupe donc dans ce billet
Lire la suite
5 nouvelles DMV dans SQL Server 2008 R2 SP1 (et donc SQL Server 2012)
Le service pack 1 de SQL Server 2008 R2 a introduit quelques nouvelles vues de gestion dynamique fort intéressantes, surtout quand il s’agit de communiquer avec les administrateurs système.
Lire la suite
Gestion basée sur des stratégies : importer les stratégies de meilleures pratiques
Introduite avec SQL Server 2008, la gestion basée sur les stratégies est une fonctionnalité qui permet d’évaluer et éventuellement de mettre en conformité des instances de SQL Server.
Cela simplifie quelque peu la gestion d’un nombre important d’instances SQL Server, en permettant de s’assurer que toutes les instances, bases de données ou objets sont en conformité, et ce de façon extrêmement élémentaire.
Autre avantage : c’est compatible avec les versions antérieures de SQL Server.
Cette fonctionnalité est livrée avec 50 stratégies par défaut, qualifiées de « meilleures pratiques », mais qui ne sont pas préinstallées directement. Voici comment les importer …
Trouver et changer le propriétaire d’un plan de maintenance
Bien qu’incomplets en termes de fonctionnalités par rapport à une procédure stockée qui ferait la même chose, les plans de maintenance s’avèrent très simple à développer et à déployer dans un temps court. Je pense notamment à l’impossibilité de compresser des sauvegardes sous SQL Server 2008.
Comme beaucoup de choses effectuées à l’aide des interfaces graphiques proposées par SQL Server Management Studio, les effets produits par l’exécution d’une tâche ne sont pas toujours détaillés. Le propriétaire d’un plan de maintenance n’y échappe pas et est écrasé à chaque modification du plan.
Voici donc comment le trouver, et le changer.
Lire la suite
Marquer une procédure stockée comme objet système : la procédure stockée sp_MS_marksystemobject
Il peut être intéressant de pouvoir utiliser une procédure stockée dans n’importe quel contexte de base de données (sur la même instance SQL Server).
Voyons comment faire cela à l’aide de la procédure stockée système non documentée sp_MS_marksystemobject
Lire la suite
Quelles sont les requêtes et tâches en cours d’exécution dans une instance SQL Server ?
Voici une requête basée sur les vues et fonctions de gestion dynamiques, introduites avec SQL Server 2005.
Elle permet de lister l’ensemble des requêtes actuellement en cours d’exécution dans une instance SQL Server, avec quelques statistiques et caractéristiques :
– le n° de session (SPID),
– le nombre de threads mis en place pour résoudre la requête,
– le nom du serveur,
– le nom du login,
– le pourcentage d’avancement d’une instruction,
– le nom de la base de données,
– le statut de la session,
– le temps écoulé depuis le début de l’exécution,
– le temps CPU consommé,
– le nombre de lectures et d’écritures,
– le type d’instruction,
– le nombre de transactions ouvertes par la session,
– le nombre de resultsets,
– le type d’attente,
– le temps d’attente pour ce type,
– le type d’attente précédent,
– la ressource attendue,
– le nom du programme / job qui exécute la requête,
– l’instruction SQL en cours d’exécution dans le lot,
– le lot SQL complet,
– le plan de requête,
– les hashs de requête et de plan,
– le nombre d’exécutions du plan,
– la date de génération du plan,
– l’adresse IP de la machine exécutant la requête.
Toute suggestion est la bienvenue !