J'ai une base de données A. Elle contient des données. J'ai créé une sauvegarde pour A en tant que fichier A.bak . Ensuite, je crée une nouvelle base de données vide B. Et puis j'essaie de restaurer B à partir de A.bak . Mais le SQL Serve me dit l'erreur suivante:
Le fichier «C: \ SQL Directory \ DATA \ A.mdf» ne peut pas être remplacé. Il est utilisé par la base de données «A».
Mais si je supprime A de SQL Server, la restauration est correcte.
Je ne comprends pas pourquoi les besoins SQL pour écrire à l' origine le fichier de base de données lors de la restauration d'un séparé fichier de sauvegarde?
Merci ~
la source
Lorsque vous restaurez la sauvegarde, vous pouvez spécifier les fichiers de données à restaurer.
Regardez ici et ici . Vous pouvez utiliser l'option "Restaurer les fichiers de base de données sous" et l'indicateur "Remplacer la base de données existante".
la source
Utilisez-vous l'option REMPLACER, soit dans la commande TSQL, soit en tant que case à cocher sélectionnée? Vous pouvez également renommer les fichiers et appeler la base de données autrement.
Vous aurez également du mal à restaurer sur une base de données utilisée ..... vous devrez tuer les processus utilisant la base de données; OU supprimez / supprimez d'abord la base de données, fermant les connexions (c'est probablement la plus simple); OU définissez la base de données que vous souhaitez remplacer dans quelque chose comme le mode utilisateur restreint avec restauration immédiate afin que, espérons-le, seuls les administrateurs de base de données puissent utiliser; OU même arrêtez SQL Server et redémarrez-le - espérons que la restauration démarre avant que quiconque / quoi que ce soit utilise cette base de données.
PS faire une sauvegarde de la base de données que vous êtes sur le point d'écraser, au cas où.
la source
Si quelqu'un recherche une solution dans l'interface graphique de Management Studio après avoir déjà utilisé la
Options
page et activé l'Overwrite the existing database (WITH REPLACE)
option:Cliquez simplement dans la
Restore As
colonne et modifiez les noms de fichier du*.mdf
fichier et du*.ldf
fichier.la source