2010-07-13 5 views
0

Je viens de remarquer deux mois après la désactivation d'un lecteur de sauvegarde qu'une table de l'une des bases de données sauvegardées perd des enregistrements après un certain point.La sauvegarde de SQL Server entraîne la disparition des enregistrements de table récents pour une table

La base de données est sauvegardée chaque semaine.

Avant le nouveau disque, la table contenait des enregistrements du 3/11/2010 au 6/8/2010. Après l'exécution de la première sauvegarde, la table ne contenait plus tous les enregistrements au-delà du 3/11/2010, à l'exception d'un ou de deux enregistrements créés le jour précédant la sauvegarde. Les enregistrements ont commencé à s'accumuler à ce moment sans incident jusqu'à 3 sauvegardes plus tard, un mois après la première sauvegarde qui a coïncidé avec la perte de données. À ce stade, tous les enregistrements passés le 3/11/2010 étaient à nouveau manquants (sauf pour un ou deux qui ont été créés juste avant la sauvegarde).

Cela n'affecte qu'une table dans la base de données et cela ne se produit pas avec toutes les sauvegardes, juste celles qui se produisent autour du 6/11 et du 7/11.

Des idées? Je suis complètement coincé sur la façon de diagnostiquer même cela. Les autres bases de données sur le même lecteur de sauvegarde ne semblent pas affectées et les autres tables de cette base de données ne sont pas affectées.

Répondre

1

La création d'une sauvegarde de base de données n'entraînera pas la suppression des lignes. Quelque chose d'autre doit arriver pour provoquer ce comportement. Savez-vous que les lignes disparaissent à (environ) en même temps que la sauvegarde est en cours? Peut-être dans +/- minutes, heures ou jours? Le problème peut-il être répliqué ou semble-t-il se produire au hasard? (Cela prend-il du temps pour effectuer des sauvegardes complètes, différentielles et/ou du journal des transactions?)

Je vous recommande d'exécuter SQL Profiler avant, pendant et après la sauvegarde (au cours de cette sauvegarde +/- window), et surveillez attentivement les événements susceptibles de supprimer des lignes. Vous devrez peut-être faire cela pour chaque sauvegarde pendant un moment, jusqu'à ce que vous rencontriez une occurrence du problème réel.

+0

Le profilage SQL peut-il être planifié? Est-ce que cela va taxer le serveur s'il ne dure que quelques heures? Bonne idée !! – Caveatrob

+0

Nous pensons également à la sauvegarde nocturne ... – Caveatrob

+0

La planification d'une exécution SQL Profiler est à mon humble avis un processus trop complexe. J'ai travaillé sur ma propre version une fois, et cette page http://www.mssqltips.com/tip.asp?tip=1715 a un processus similaire. Pas facile à comprendre ou à mettre en place, mais ça vaut vraiment le coup les quelques fois où vous en avez besoin. –

Questions connexes