BACKUP LOG ne peut pas être effectué car il n'y a pas de sauvegarde de base de données en cours


103

J'ai essayé de restaurer une base de données mais ce message est apparu. Comment restaurer cette base de données?

La restauration de la base de données 'farhangi_db' a échoué.
(Microsoft.SqlServer.Management.RelationalEngineTasks)
------------------------------ INFORMATIONS SUPPLÉMENTAIRES:

System.Data.SqlClient.SqlError: BACKUP LOG ne peut pas être effectué car
il n'y a pas de sauvegarde de base de données en cours. (Microsoft.SqlServer.SmoExtended)


2
S'agit-il d'une sauvegarde différentielle?
Amir Keshavarz

@AmirrezaKeshavarz: quoi? (motavajeh nemisham manzuretuno)
Saman

1
Je veux dire que quel type de sauvegarde allez-vous restaurer? (sauvegarde du journal des transactions / sauvegarde complète / sauvegarde différentielle?)
Amir Keshavarz

Il semble cassé le journal des transactions
bksi

Votre base de données existe-t-elle? L
Amir Keshavarz

Réponses:


205

À l'origine, j'ai créé une base de données, puis j'ai restauré le fichier de sauvegarde dans ma nouvelle base de données vide:

Faites un clic droit sur Bases de données> Restaurer la base de données> Général: Périphérique: [le chemin du fichier de sauvegarde] → OK

C'était faux . Je n'aurais pas dû d'abord créer la base de données.

Maintenant, à la place, je fais ceci:

Faites un clic droit sur Bases de données> Restaurer la base de données> Général: Périphérique: [le chemin du fichier de sauvegarde] → OK


J'ai rencontré la même erreur et cela a fonctionné pour moi.
javiniar.leonard

A travaillé pour moi aussi
nbhatti2001

127

Une autre cause de ce problème est lorsque le Take tail-log backup before restoreparamètre «Options» est activé.

Dans l'onglet "Options", désactivez / décochez Take tail-log backup before restoreavant de restaurer une base de données qui n'existe pas encore.


Merci @Peach, vous gagnez mon temps.
Frank Myat jeu.28

@Peach Merci a sauvé mon temps.
LKC

@Peach Merci beaucoup!
Mohit Dharmadhikari

ET cochez l'option "AVEC REMPLACER"
Andrii Horda

33

Veuillez voir l' image ci - dessous et appliquer les modifications dans SqlServer:

Cliquez d' abord avec le bouton droit de la souris sur Base de données -> Tâche -> Restauration -> Sélectionnez le fichier de sauvegarde -> Appliquer enfin le changement dans l'onglet Options .

veuillez appliquer les modifications dans SqlServer


Dans mon cas, je fais cela et coche la première case à cocher "Écraser la base de données existante (AVEC REMPLACER)" et fonctionne.
Amaurys Sánchez

6
  1. Assurez-vous qu'il existe une nouvelle base de données.
  2. Assurez-vous d'avoir accès à votre base de données (utilisateur, mot de passe, etc.).
  3. Assurez-vous qu'il existe un fichier de sauvegarde sans erreur.

J'espère que cela peut vous aider.


2

Une autre cause à cela est si vous avez la même base de données restaurée sous un nom différent. Supprimer l'existant, puis restaurer l'a résolu pour moi.


Merci d'avoir répondu. Lol, pourquoi Microsoft SQL Server ne vient-il pas de dire "Mec, supprimez la base de données existante avant de la restaurer!"
sivabudh

1

Dans notre cas, cela était dû au fait que le modèle de récupération de la base de données principale avait été modifié après la sauvegarde en préparation de la configuration de l'envoi de journaux.

S'assurer que le modèle de récupération était défini sur Récupération complète avant d' effectuer la sauvegarde et de configurer l'envoi de journaux a résolu le problème pour nous.


1

J'ai corrigé mon erreur lors de la restauration de la base de données non existante de SQL 2008 à SQL 2014 en cochant la case Déplacement vers le nouvel emplacement du dossier SQL2014.


1

Vous pouvez utiliser SQL suivant pour restaurer si vous avez déjà créé la base de données

RESTORE DATABASE [YourDB]
FROM DISK = 'C:\YourDB.bak'
WITH MOVE 'YourDB' TO 'C:\YourDB.mdf',
MOVE 'YourDB_Log' TO 'C:\YourDB.ldf', REPLACE

0

Je viens de supprimer la base de données existante que je voulais remplacer avec la sauvegarde et de la restaurer à partir de la sauvegarde et cela a fonctionné sans l'erreur.


0

Je ne sais pas si le fichier de sauvegarde de la base de données, que vous essayez de restaurer, provient du même environnement que celui sur lequel vous essayez de le restaurer.

N'oubliez pas que le chemin de destination des fichiers .mdf et .ldf vit avec le fichier de sauvegarde lui-même.

Si ce n'est pas un cas, cela signifie que le fichier de sauvegarde provient d'un environnement différent de celui de votre hébergement actuel, assurez-vous que le chemin du fichier .mdf et .ldf est le même (existe) que sur votre machine, déplacez-les autrement. (Principalement un cas de restauration de la base de données dans l'image Docker)

La façon de le faire: Dans les bases de données -> Restaurer la base de données -> option [Fichiers] -> (Cochez "Déplacer tous les fichiers dans le dossier" - le chemin par défaut est déjà renseigné sur votre environnement d'hébergement)


0

Si le problème persiste, accédez à la page de restauration de la base de données et cochez la case "Restaurer tous les fichiers dans le dossier" dans l'onglet "Fichiers" Cela peut aider


0

Dans mon cas, je restaure une base de données SQL Server 2008 R2 vers SQL Server 2016 Après avoir sélectionné le fichier dans l'onglet Général, vous devez aller dans l'onglet Options et faire 2 choses:

  1. Vous devez activer Écraser la base de données existante
  2. Vous devez désactiver la fin de la copie d'enregistrement

-1

Vous pouvez simplement utiliser cette méthode:

  1. Si vous avez une base de données avec le même nom: WIN+R-> services.msc-> SQL SERVER(MSSQLSERVER)->Stop
  2. Accédez au chemin de votre dossier MySQL Data et supprimez les fichiers de base de données des aperçus
  3. Démarrer le service SQL
  4. Faites un clic droit sur la base de données et sélectionnez Restaurer la base de données
  5. dans l'onglet Fichiers, changez le dossier du fichier de données et le dossier du fichier journal
  6. Cliquez sur OK pour restaurer votre base de données

mon problème a été résolu avec cette méthode PAR ...


-1

Cliquez avec le bouton droit sur votre base de données Les tâches de presse> Sauvegarder et effectuez une sauvegarde de votre base de données avant de restaurer votre base de données. J'utilise cette méthode pour résoudre ce problème

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.