IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

[SQL 2005] Backup et Restore d'une BDD


Sujet :

Administration SQL Server

  1. #1
    Membre confirmé
    Avatar de strat0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2003
    Messages : 288
    Points : 598
    Points
    598
    Par défaut [SQL 2005] Backup et Restore d'une BDD
    Salut à tous,

    Je suis étudiant en BTS et on me demande de savoir sauvegarder puis restaurer une base de données. Je fais ça sous Management Studio.

    Mon problème c'est que lorsque je fais le restore (à partir du fichier .bak que j'ai précédemment sauvegardé) on m'annonce que la restauration a réussi, puis ma BDD reste bloquée sur "Nom de la BDD(Restauration...)". Impossible de faire une requête dessus, elle reste bloquée sur cet état, même après un redémarrage du serveur de BDD, même après un redémarrage de la machine. Obligé de supprimer la BDD et de la recréer de zéro.

    Alors si vous avez une idée d'où cela peut venir, ou à défaut si vous avez deux commandes Backup et Restore très simples pour sauvegarder et restaurer la BDD sans trop se prendre la tête, je suis preneur.

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 852
    Points : 52 992
    Points
    52 992
    Billets dans le blog
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    -- sauvegarde
    BACKUP DATABASE pubs
    TO DISK = 'C:\BACKUP_SQL_SERVER_BASE_PUBS.bkp'
    GO
     
    -- suppression de la base
    USE master
    GO
    DROP DATABASE pubs
    GO
     
    -- restauration de la base
    USE master
    GO
    RESTORE DATABASE pubs
    FROM DISK = 'C:\BACKUP_SQL_SERVER_BASE_PUBS.bkp'
    WITH RECOVERY
    GO
     
    -- si la base existe déjà :
    USE master
    GO
    RESTORE DATABASE pubs
    FROM DISK = 'C:\BACKUP_SQL_SERVER_BASE_PUBS.bkp'
    WITH REPLACE, 
         RECOVERY
    GO
    A +

  3. #3
    Membre confirmé
    Avatar de strat0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2003
    Messages : 288
    Points : 598
    Points
    598
    Par défaut
    Merci c'est chouette.

    En fait si ma base de données restait bloquée sur "(Restauration...)", c'était vraisemblablement dû à la machine que j'utilisais, car depuis que j'en ai changé, tout roule.

    Par contre j'ai encore quelques questions.

    Parfois je lis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FROM/TO DISK = N'G:\sauvegarde LOG BDD PTI_EMALING.bak'
    Que signifie ce N (qui n'apparaît pas à chaque fois dans les exemples), et surtout, a-t-il de l'importance?

    Quand j'essaie de restaurer le journal des transactions de ma base en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    USE master
    RESTORE LOG PTI_EMAILING
    FROM DISK = 'G:\sauvegarde LOG BDD PTI_EMALING.bak'
    WITH NORECOVERY
    GO
    ...j'ai un message d'erreur "Impossible de restaurer la sauvegarde de journal ou différentielle car aucun fichier n'est prêt pour la restauration par progression." (???)

    Autrement, je voudrais pouvoir créer un petit script SQL pour pouvoir restaurer la base de données master.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SHUTDOWN WITH NOWAIT
    RESTORE DATABASE master
    FROM DISK='G:\sauvegarde BDD master.bak'
    GO
    ???
    Mais ce qu'il me manque c'est l'équivalent de SHUTDOWN pour redémarrer automatiquement le serveur.

    J'ai cru comprendre que sauvegarder le journal des transactions de master n'avait aucun intérêt?

    J'ai aussi créé un batch pour faire une sauvegarde à froid des fichiers mdf et ldf de la base, mais j'ai un doute car ces fichiers pour master apparaissent en double :
    - une fois dans le répertoire "Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\"
    - et une autre dans le répertoire "Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data\"

    Les fichiers de ma base perso sont dans MSSQL.1, alors quels sont ceux de master qui comptent vraiment?

    Voilà c'est tout. Merci d'avance pour toutes les réponses que vous pourrez m'apporter.

  4. #4
    Membre confirmé
    Avatar de strat0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2003
    Messages : 288
    Points : 598
    Points
    598
    Par défaut
    Bonjour,

    Sans vouloir paraître exigeant, je cherche toujours des réponses à toutes ces questions. Alors je me permets de remonter le sujet.

Discussions similaires

  1. Restore d une BDD de Sql serv er 2005 vers Sql Server 2000
    Par Nadaa dans le forum Administration
    Réponses: 1
    Dernier message: 27/09/2007, 13h11
  2. Restore d une BDD de Sql serv er 2005 vers Sql Server 2000
    Par Nadaa dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 27/09/2007, 13h11
  3. [sql 2005]: changer le nom d'une colonne dans un table
    Par TheLittle dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/06/2006, 15h29
  4. [C# express 2005] Récupération d'information dans une BDD
    Par poussinphp dans le forum Windows Forms
    Réponses: 1
    Dernier message: 06/05/2006, 22h25
  5. Backup et restore d'une base SQL Server
    Par ZeKlubb dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/03/2005, 18h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo