Free SQL backup software for MS SQL Server 2008, 2012 and 2005 (Express) databases - SQLBackupFTP. Suppression accidentelle de ligne : comment retrouver le coupable ? | Cap Data Team SGBD Blog : Oracle, SQL Server, MySQL, Sybase… C’est vrai qu’il y a des outis, Change Data Capture et tout l’arsenal des Database Audit Specifications. Mais pour retrouver qui a supprimé les lignes dans la table T1 le 17 septembre dernier entre 12h00 et 14h00 il y a encore plus simple, pour peu qu’il y ait des backups de transactions. La fonction qui tue: Dans un article précédent, nous avons couvert une fonction table valuée fort intéressante qui permet de relire à l’intérieur d’une sauvegarde de journal: fn_dump_dblog().
Nous allons nous en servir pour connaître cette fois l’identité du coupable. La table concernée par le DELETE est la table T1, il faut commencer par récupérer sa valeur de allocation_unit_id: select allocation_unit_id from sys.allocation_units AU inner join sys.partitions P on P.hobt_id = AU.container_id where P.object_id = object_id('T1') allocation_unit_id --------------------- 72057594043301888 Ensuite, rechercher dans les backups transactionnels des opérations de suppression de lignes sur cet objet: Le dénouement… Blogs - Madhivanan's TSQL Blog. Le blog de SQLpro. La plupart des développeurs sont persuadés que mettre toutes les informations dans une même table rendra leur base de données plus rapide… Et l’on voit apparaître dans la base de nombreuses tables de plusieurs dizaines de colonnes.
C’est une vue à court terme, car dès que la base de données commence à croitre ou que le nombre d’utilisateur augmente, les performances deviennent vite catastrophique… Cet article explique pourquoi… Lire la suite Si l’on y prend pas garde, notamment à cause d’une mauvaise administration du serveur, un journal de transaction (JT) peut saturer les disques du serveur. Que faire en cas de problème ? Voici différents scénarios et différents scripts pour parvenir à vos fins. Lire la suite La requête suivante interroge la trace du profiler par défaut pour connaître les événements de croissance de fichiers. Lire la suite Voici une petite procédure pour obtenir les informations sur les volumes et taux d’occupation des disques de votre serveur SQL. Lire la suite. Comprendre le fonctionnement des snapshots avec SQL Server | Le blog Sql de mikedavem. Il est possible depuis SQL Server 2005 de créer des captures instantanées de base de données.
Cependant je me suis aperçu que cette fonctionnalité était plutôt méconnue. Dans ce billet, j’essaierais d’expliquer au mieux le fonctionnent des captures instantanées et d’exposer les avantages et les inconvénients quant à leur utilisation. Tout d’abord qu’est ce qu’une capture instantanée de bases de données ? On peut le définir comme une copie ou image « virtuelle » en lecture seule d’une base de données à un instant donné. Le terme « Lecture seule » signifie donc qu’il est impossible d’effectuer des opérations de mise à jour au travers de cette copie de base de données. De plus, l’espace requis par cette copie virtuelle est en général moins important car seules les pages de données modifiées sont stockées dans une capture instantanée .
La création d’un snapshot Commençons par créer une base de données de test nommée testdb ainsi qu’une table test1 avec un jeu de données : et son résultat :