lundi 5 novembre 2012

Base de données inaccessible en raison de journal des transactions endommagé

SQL Server, le logiciel de base de données populaire de gestion, les opérations de magasins dans les fichiers journaux de transaction intermédiaire jusqu'à ce qu'ils se sont engagés pleinement. Perte de fichiers de transaction en raison de la corruption peut conduire à des bases de données inaccessibles avec les messages d'erreur. Les dommages peuvent être le résultat de diverses raisons. Un crash de disque: entraînant la perte du journal de transactions ou de base de données, la suppression accidentelle d'un fichier, une erreur de logique dans la base de données, une panne de courant, ou d'un dommage du matériel peut entraîner journal endommagé.

Si le système a été mis hors tension anormale, SQL Server tente de récupérer automatiquement. Lors du redémarrage de la base de données, mécanisme de récupération automatique est lancé et toutes les transactions ouvertes sont annulées et les transactions qui ont suivi, mais ne sont pas écrites dans les fichiers de données sont ré-exécuté. Processus de récupération efficace, il faut comprendre les situations d'erreur différents profondément. Dans cet article, nous allons discuter d'une situation où vous avez créé une sauvegarde de transaction et ils ont maintenant de le récupérer.

Restaurer une sauvegarde du journal des transactions dans SQL Server 2008 R2

Si vous avez créé une sauvegarde différentielle, vous devez les restaurer dans le même ordre qu'ils ont été créés. Premièrement, vous devez restaurer à partir de la sauvegarde complète et la dernière sauvegarde différentielle, le cas échéant, prises avant la sauvegarde du journal des transactions en particulier. Après cette étape, restaurer toutes les sauvegardes du journal des transactions qui ont été prises après la sauvegarde complète et la sauvegarde différentielle et avant la sauvegarde du journal des transactions.

Récupération journal des transactions

Effectuez les opérations sous-jacentes afin de récupérer un fichier journal des transactions.

   1. Exécutez SQL Server.
   2. Après connexion à l'instance, dans l'Explorateur d'objets, cliquez sur le nom du serveur pour développer l'arborescence du serveur.
   3. Dans Bases de données, sélectionnez une base de données utilisateur ou système de bases de données noeud sélectionner une base de système.
   4. Cliquez-droit sur la base de données, puis cliquez sur Tâches -> Restaurer.
   5. Cliquez journal des transactions. Restaurer le journal des transactions boîte de dialogue s'affiche.
   6. Sur l'écran général, dans les options de base de données, spécifiez la base de données en état de restauration.
   7. Localisez pour spécifier la sauvegarde du journal des transactions.
   8. Dans la zone Sélectionnez les jeux de sauvegarde à restaurer, sélectionnez les sauvegardes du journal des transactions à restaurer. Sauvegardes du journal sont énumérés dans l'ordre des numéros de séquence de journal. Ils doivent être restaurés dans le même ordre.
   9. Sélectionnez le point dans le temps: pour restaurer jusqu'à une époque ou d'une transaction marquée: pour restaurer une transaction marquée.
  10. Dans la zone Sélectionnez une option de la page, cliquez sur Options pour sélectionner les options avancées.
  11. Dans la zone Restaurer à des options, choisissez parmi: conserver les paramètres de réplication, demander avant chaque restauration de sauvegarde, ou de restreindre l'accès à la base de données restaurée.
  12. Dans les options État de récupération, spécifiez l'état que la base de données fera l'acquisition après la récupération.
       * Vous pouvez laisser la base de données à l'état prêt en restaurant les transactions non validées. Dans cette transaction logs ne sont pas restaurés.
       * Vous pouvez récupérer la base de données. Utilisez cette option lorsque vous n'avez pas tous les fichiers journaux.
       * Ne pas restaurer les transactions non validées. Dans cette option, les journaux des transactions supplémentaires peuvent être restaurés.
       * Laisser la base de données non recouvrés.
  13. Laisser la base de données en mode lecture seule. Cette option est égal au RESTORE WITH STANDBY clause dans SQL. Spécifiez un nom de fichier en attente dans la zone de texte le fichier de veille.

Après avoir effectué les étapes ci-dessus la sauvegarde du journal des transactions seront restaurées en arrière et la base de données endommagée sera pleinement opérationnel.

Si la solution ci-dessus ne résout pas votre problème, vous pouvez essayer le logiciel de récupération de SQL

Aucun commentaire:

Enregistrer un commentaire

Thanks for your valuable comment !