Lors de la restauration de la base de données, il indique que la restauration a réussi, mais la base de données est affichée dans la liste des bases de données comme étant en cours de restauration :
Exécutez cette commande. Disponible :
RESTAURER LA BASE DE DONNÉES EnterPriseBuilding AVEC RÉCUPÉRATION
1 Il existe au moins une sauvegarde complète de la base de données précédente qui a été accidentellement supprimée.
2. Le mode de récupération de la base de données est "Complet".
1. Paramètres de condition requis pour la restauration
Utilisez la commande pour transmettre le journal des transactions de sqlserver et une sauvegarde complète de la base de données avant accidentelle suppression Restaurer, donc dans l'assistant de plan de maintenance de sqlserver2012, créez une sauvegarde complète, une sauvegarde différentielle et un journal des transactions, comme suit
et définissez les propriétés et options de la base de données , définissez-le sur une sauvegarde complète, comme indiqué ci-dessous
Après avoir effectué les deux paramètres ci-dessus, il sera très facile de récupérer les données après la suppression accidentelle de la base de données. parlons de la façon de restaurer les données du serveur SQL jusqu'au point de défaillance.
2. Commande de restauration
La restauration est principalement divisée en quatre étapes :
1. Après un échec, exécutez d'abord la commande de sauvegarde du journal des transactions, ici AdventureWorks est utilisé comme. le nom de la base de données. La commande est la suivante :
BACKUP LOG AdventureWorks TO DISK = 'C:\SQLServerBackups\AdventureWorks_transcationlog.bak' WITH NORECOVERY;
2. Restaurer les données à partir d'une sauvegarde complète
RESTORE DATABASE [QASupervision] FROM DISK='M:\Database\OA\AdventureWorks_Fullbackup_2014_03_18_010002_0155764.bak' WITH NORECOVERY, REPLACE
3. Restaurer les données à partir d'une sauvegarde différentielle
RESTORE DATABASE [QASupervision] FROM DISK='M:\Database\OA\AdventureWorks_diffbackup_2014_03_18_020002_0155764.bak' WITH NORECOVERY, REPLACE
4. à partir du journal des transactions Restaurer les données à un moment donné
DECLARE @dt datetime SELECT @dt=DATEADD(HOUR,-16,GETDATE()) select @dt RESTORE LOG [QASupervision] FROM DISK='C:\SQLServerBackups\AdventureWorks_transcationlog.bak' WITH STOPAT=@dt,RECOVERY
5. Restaurez la base de données si la base de données indique qu'elle est en cours de restauration, exécutez simplement cette commande.
RESTORE DATABASE AdventureWorks WITH RECOVERY
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!