je une table dans mon SQL Server 2008 par hasard, je mettais une table d'une autre en copiant cellule par cellule, mais je l'ai remplacé la table d'origine. Y a-t-il un moyen de restaurer le contenu de ma table tel qu'il était?mises à jour de table Annuler dans SQL Server 2008 mis à jour
Répondre
Non Si vous engage la transaction, la seule façon de restaurer la table originale est en obtenant à partir de votre dernière sauvegarde.
si vous avez seulement une sauvegarde puis la restauration que dans une autre base de données et il suffit de déplacer la table sur (ainsi pas d'autres tables seront affectées). Si vous avez également des sauvegardes du journal des transactions, vous pouvez également faire un point dans le temps de restauration
HOw puis-je trouver ces sauvegardes du journal des transactions? – sikas
demandez à votre DBA ou a configuré cette base de données et la stratégie de sauvegarde – SQLMenace
bien, je suis celui qui a installé le serveur SQL, je l'ai installé sur mon PC personnel pas une entreprise, mais je ne sais pas où trouver ou où sont ces journaux stockés! – sikas
J'ai entendu dire qu'il ya des outils qui pourraient être en mesure d'annuler certaines actions dans certaines circonstances. Voici un link à un article intéressant sur la façon de minimiser la perte de données dans ces circonstances et il comprend des liens vers certains outils.
Vous voudrez peut-être poser cette question à ServerFault ainsi que certains pourraient sysadmins mieux connaître.
Cet outil dit qu'il peut le faire, un peu cher cependant. Il y a une période d'essai, peut-être que ce sera assez longtemps pour récupérer vos données:
Vérifiez ce lien. Il montre comment restaurer les valeurs en utilisant journal des transactions
https://www.experts-exchange.com/articles/28199/How-to-recover-deleted-rows-in-SQL-Server.html
L'article montre comment nous pouvons récupérer les données supprimées si cela se produit accidentellement. Nous pouvons récupérer les lignes supprimées si nous connaissons l'heure à laquelle les données sont supprimées. Nous pouvons atteindre cet objectif en utilisant LSN (Log Sequence Numbers). Il montre un exemple de restauration des lignes supprimées en vérifiant le journal des transactions avec des valeurs LSN. Pour les mises à jour, utilisez "LOP_MODIFY_ROW".
Après suppression de lignes vérifiez le journal à l'aide de la requête suivante
Select [Current LSN] LSN], [Transaction ID], Operation, Context, AllocUnitName
FROM
fn_dblog(NULL, NULL)
WHERE Operation = 'LOP_DELETE_ROWS'
Basé sur le transactionID et le nombre de lignes affectées, filtrer le jeu de résultats. Utilisez ensuite RESTORE DATABASE
pour restaurer les valeurs du journal.
NOTE: Il est préférable de faire cette restauration dès que vous vous rendez compte de la modification/suppression accidentelle. Plus les opérations se déroulant dans une base de données sont nombreuses, plus il est probable que les valeurs du journal des transactions soient écrasées.
J'ai entendu qu'il y a quelque chose dans le SQL Server, je suppose qu'il s'appelle le journal des transactions, qui contient toutes les transactions que j'ai faites, mais je ne suis pas sûr à ce sujet !! – sikas
@sikas - Savez-vous quel est le modèle de récupération de votre base de données? –
non je ne sais pas, comment puis-je le savoir? – sikas