J’ai récemment eu un exercice à effectuer sur la machine d’un collègue

“J’ai un backup, mais je n’ai que visual studio installé, pas de Sql Server Management Studio ni rien et faut restorer la base de données”

Ok, donc :

  1. Pas de SSMS c’est noté
  2. Obligation de faire un MOVE des fichiers du backup
  3. Pas de connaissance des fichiers logiques contenus dans le backup

Pour lancer la restauration, il me faut pouvoir exécuter du script SQL. Je décide donc de partir sur du SqlCMD

Il me faut connaitre la liste des fichiers à restaurer contenus dans le backup :

   1: restore filelistonly  from disk = 'C:\tmp\AdventureWorks2008R2.bak'

Ce qui donne en sqlcmd Smile

sqlcmd

Bien maintenant que j’ai récupéré les fichiers logiques, y’a plus qu’à éxécuter la phase de restauration:

   1: RESTORE DATABASE [AdventureWorks2008R2] 

   2:     FROM  DISK = N'C:\Tmp\AdventureWorks2008R2.bak' WITH  FILE = 1,  

   3:     MOVE N'AdventureWorks2008R2_Data' TO N'C:\DATA\AdventureWorks2008R2_Data.mdf',  

   4:     MOVE N'AdventureWorks2008R2_Log' TO N'C:\DATA\AdventureWorks2008R2_Log.ldf',  

   5:     MOVE N'FileStreamDocuments2008R2' TO N'C:\DATA\Documents2008R2'

   6: GO

Et ce qui donne en SQL CMD :

image

Et voilà une base restaurée convenablement Smile