Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

SQL Server 2016 pour les administrateurs IT

Restaurer une base de données

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Votre formateur vous explique comment restaurer une base de données à partir d'une sauvegarde de base de données.
06:45

Transcription

C'est bien de faire des sauvegardes, mais, il faut que l'on sache, également, restaurer ces sauvegardes, en cas de problèmes. Ce que j'ai fait, ici, c'est que j'ai généré un autre « BACKUP de journal de transactions », en mettant en « LOWER », je vais me remettre en « UPPER », juste pour faire de réelles modifications dans les données. Et, je refais un « BACKUP de journal de transactions ». J'ai des journaux de transactions qui sont, quand même, plutôt conséquents, ici, puisqu'il y a pas mal de modifications, comparativement. Et puis, j'ai, donc, quelques sauvegardes de journal. Il faut bien comprendre que quand on fait des sauvegardes de journal, ce sont des séquences qui se suivent. Si je fais une sauvegarde complète, à chaque fois, je vais avoir l'intégralité de la base de données sauvegardée. Mais, si je fais une sauvegarde de journal, je n'aurai que les modifications qui ont été effectuées, depuis la dernière sauvegarde de journal. Donc, je me fais des séquences, ou des tronçons, si vous voulez, de modifications de la base de données. Ce qui fait que, lorsque je veux restaurer quelque chose, je vais, d'abord, devoir restaurer une sauvegarde complète, parce que ce sera le socle de ma restauration. J'ai l'intégralité de la base, à un moment donné, dans le temps. Et, ensuite, je vais devoir appliquer une différentielle, si j'ai une stratégie à partir de « BACKUP » différentielle. La dernière différentielle, bien sûr, puisqu'elle va accumuler toutes les modifications depuis la sauvegarde complète. Et, ensuite, si j'ai des sauvegardes de journaux de transactions... Je refais une parenthèse pour vous dire, la différentielle, ce n'est pas du tout obligatoire, vous pouvez avoir une stratégie basée sur des sauvegardes complètes, et, ensuite, que des journaux de transactions. Mais, à la fin, vous avez des journaux de transactions, et ça, il faut les restaurer les uns après les autres. Si, depuis votre dernière sauvegarde complète, vous avez fait 26 sauvegardes de journaux de transactions, il faut les restaurer les uns après les autres. Il faut faire 26 restaurations de journaux. Graphiquement, cela nous est facilité, dans Management Studio, dans « Tâches », « Restaurer » la « Base de données ». Parce qu'ici, je reste sur la même machine, et, dans la base de données système « MSDB », l'historique des sauvegardes que j'ai effectué a été conservé. Et donc, cet affichage me propose une restauration, à partir de ma sauvegarde complète, et de tous mes « BACKUP de journaux de transactions ». Mais, par contre, si j'ai une défaillance et que je repars sur une nouvelle installation d'« SQL Server », je n'aurai pas d'aide, à ce niveau-là. Donc, il faudra que je récupère, ici, les périphériques, que j'aille chercher et ajouter mes différents fichiers de sauvegarde. Et, ensuite, Management Studio va faire un calcul pour trouver la séquence et va me proposer quelque chose. Si je n'arrive pas à faire cela, il faut que je fasse les choses à la main. Je vais vous en parler brièvement. Ici, pas besoin de faire cela, j'ai déjà ma séquence. Ce qu'il faut bien comprendre, également, c'est que la séquence du journal, cela veut dire qu'il faut toutes les sauvegardes de journaux de transactions depuis la dernière sauvegarde complète. Si j'ai un trou dans ma séquence, je ne pourrai pas aller plus loin, il faudra arrêter ma restauration à partir du moment où ce trou s'est produit. Parce que toute la séquence des journaux, c'est l'historique des modifications dans la base, il ne peut pas y avoir de trous, même, ne serait-ce que d'une entrée du journal de transactions, il ne faut pas se tromper là-dedans. Ici, j'ai de la chance, parce que ces restaurations vont être générées par l'interface graphique. Si je dois le faire à la main, je vais vous montrer, ici, le script qui est généré, je vais faire « annuler ». Si je dois le faire à la main, je vais devoir d'abord, alors, ici, on oublie ce « BACKUP LOG », il s'agit de l'interface graphique qui a généré une dernière sauvegarde du journal de transactions, pour qu'il ne me manque rien. Donc, je vais m'en passer. Il faut d'abord que je fasse un « RESTORE DATABASE » à partir de ma sauvegarde complète. Vous voyez qu'ici, il y a une option qui dit « WITH FILE = 3 ». C'est pour aller chercher dans ce même fichier, la position de mon jeu de sauvegarde. En général, ici, pour la démonstration, j'ai tout mis dans le même « BACKUP », mais, en général, vous aurez des fichiers différents. Mais, on va voir qu'avec les plans de maintenance graphique, par exemple, il va générer, pour vous, des fichiers différents. C'est, quand même, assez rare, de nos jours, que l'on utilise cette stratégie pour mettre tout dans le même fichier. Je fais, d'abord, un « RESTORE DATABASE » de ma sauvegarde complète. Il y a une option importante, elle s'appelle « NORECOVERY ». Alors, cela vaut explication. Lorsque je restaure ma base de données et que je veux appliquer, ensuite, d'autres restaurations, celles-ci, il faut que je laisse ma base de données dans un état, qui est un état de récupération. Je vais vous montrer ce que cela donne « NORECOVERY ». On va aussi ajouter « REPLACE », parce que, sinon, est-ce que le serveur va me dire : « Non, mais attends, tu es en train d'essayer d'écraser une base de données existante et il reste encore des données dans le journal. » Je vais lui dire : « Non, je veux remplacer la base. » Et, en plus, elle est utilisée dans cette session. Je suis au mauvais endroit. Et, ce qui va se passer, également, c'est que je vais avoir des sessions ouvertes dedans, je vais essayer de m'en débarrasser, sinon, on aurait pu déconnecter les gens, mais on n'a pas eu besoin de le faire. Donc, maintenant, ma base de données est dans un état, qui est un état de restauration. Vous vous souvenez, le « RECOVERY », c'est la même chose qui se produit, lorsqu'on démarre « SQL Server » et qu'il doit rejouer une partie du journal de transactions. Ici, ce qui se passe, c'est que lorsque j'ai fait ma sauvegarde de base de données complète, la sauvegarde a inclus une partie du journal, la portion active. Cette portion active contient, peut-être, des transactions non terminées. À ce moment là, il faut, en quelque sorte, conserver cette restauration ouverte, de façon à ce qu'on puisse appliquer la suite des opérations transactionnelles dans la restauration suivante. Et donc, ce que je vais faire, c'est appliquer des restaurations de mes journaux de transactions, les unes après les autres. Et, vous voyez, je continue à faire un « NORECOVERY » pour laisser, en quelque sorte, la base de données ouverte à une restauration supplémentaire, jusqu'au moment où je ne mets plus, ici, le « NORECOVERY », j'aurai pu écrire « RECOVERY », tout court, mais c'est la valeur, par défaut. Pour dire : « Maintenant, tu arrives à la fin de ce que j'ai comme sauvegarde, tu vas résoudre les problèmes transactionnels qui peuvent être encore ouverts dans ce dernier morceau du journal. » Parce que, il y avait, au moment où j'ai fait cette sauvegarde, une transaction qui était encore ouverte. Donc, on va faire une restauration successive et je me retrouve, maintenant, avec ma base de données restaurée.

SQL Server 2016 pour les administrateurs IT

Comprenez le fonctionnement et les différents modules qui composent SQL Server. Prenez en main les bases de données, les schémas, les tables, la gestion des fichiers, etc.

5h20 (55 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :14 mars 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !