Avant d’envisager une réduction du fichier du journal des transactions, il convient de connaître le nombre de fichiers virtuels que contient le fichier du journal des transactions.
On peut également envisager de le faire grossir de nouveau pour avoir moins de fichiers virtuels, et obtenir de meilleures performances pour les transactions manipulant un grand volume de données.
Voyons comment faire cela :
Archives pour la catégorie Moteur de base de données SQL Server
Attacher une base de données qui n’a pas de fichier du journal des transactions
Voici comment attacher une base de données SQL Server pour laquelle on dispose seulement des fichiers de données mais pas du fichier du journal des transactions.
Activer la compression par défaut de toutes les sauvegardes de base de données
SQL Server 2008 a introduit la compression native des sauvegardes de base de données.
S’il est simple d’ajouter l’option COMPRESSION dans une instruction BACKUP, il est encore mieux de ne même pas avoir à y penser.
Pour cela, il suffit d’activer la compression par défaut de toutes les sauvegardes de base de données.
Notons que cela vaut pour :
– tous les types de sauvegarde (complète, différentielle, du journal des transactions, partielle, …)
– les sauvegardes réalisées à l’aide de plans de maintenance.
Attention aux types de données money et smallmoney !
En effet, ces deux types de données produisent des erreurs de calculs.
Voici un petit test pour révéler cela :
Une procédure stockée système pour monitorer les verrous
Voici une procédure stockée qui permet de lister les verrous en cours dans une instance SQL Server
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
Lister toutes les instances de SQL Server installées sur un serveur (ou une machine virtuelle)
Voici un script généreusement publié par Parikshit Savjani, et qui permet d’obtenir la liste du nom de toutes les instance SQL Server installées sur un serveur.
Merci Parikshit, et bon listage à tous
Comprendre les plans d’exécution et l’Optimiseur de requêtes : deux très bons ouvrages
L’Optimiseur de Requêtes est l’organe logiciel au cÅ“ur du moteur de base de données de SQL Server.
Pour avoir optimisé un grand nombre de requêtes, je dois dire que c’est une bête incroyable qui continue de m’étonner : elle continue de faire fonctionner SQL Server avec des performances acceptables alors que le modèle de données laisse souvent à désirer quand ce n’est pas pire
Voici donc deux ouvrages qui exposent comment lire les plans d’exécution graphiques, et comment l’Optimiseur de requêtes fonctionne. Le reste, c’est l’expérience qui le donne !
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