Comment sauvegarder et restaurer une base de données SQL d’un serveur à un autre
Résumé: Vous souhaitez déplacer une base de données SQL d'une instance de serveur à une autre ? Ce blog démontrera comment sauvegarder une base de données dans une instance de SQL Server et la restaurer sur une autre instance de serveur. Si le serveur à partir duquel vous voulez sauvegarder la base de données tombe en panne et que la base de données ne s'ouvre pas, essayez d'utiliser le logiciel Stellar Repair for MS SQL pour réparer la base de données. Avec le logiciel de réparation SQL à votre disposition, vous pouvez éviter les temps d'arrêt liés à la résolution des problèmes de corruption de la base de données.
Il peut arriver que vous ayez besoin de sauvegarder et de restaurer une base de données SQL d’un serveur à un autre. Il s’agit notamment des cas suivants
- Mise à jour de la version actuelle du serveur SQL vers la version la plus récente
- Mise à disposition de la base de données pour les opérations à distance
- Configuration de la mise en miroir de la base de données
- Pour tester la cohérence de la base de données sur différents serveurs
Sauvegarde et restauration d’une base de données SQL d’un serveur à un autre
Conditions préalables
Avant de lancer le processus de sauvegarde et de restauration d’une base de données SQL d’un serveur à un autre, assurez-vous d’avoir installé les éléments suivants sur votre système :
- SQL Server Management Studio (SSMS)
- Toute version de SQL Server
Comment sauvegarder une base de données SQL ?
Étape 1 : Ouvrez SSMS et connectez-vous à l’ancienne instance de SQL Server (c’est-à-dire SQL Server 2008 R2 dans notre cas). Une fois connecté au serveur, développez les bases de données dans le volet Explorateur d’objets.
Étape 2 : Cliquez avec le bouton droit de la souris sur la base de données que vous souhaitez sauvegarder, puis cliquez sur Tâches > Sauvegarder.
Étape 3 : Dans la fenêtre ‘Sauvegarder la base de données’, choisissez le type de sauvegarde : complet, puis cliquez sur OK.
Étape 4 : Cliquez sur OK lorsqu’une boîte de message affichant “La sauvegarde de la base de données ‘Test’ s’est terminée avec succès” apparaît.
Étape 5 : Allez maintenant à l’endroit où la sauvegarde de la base de données est stockée.
Note : L’emplacement par défaut du répertoire de sauvegarde est C:\NProgram Files\NMicrosoft SQL Server\NMSSQL. n\NMSSQL\NBackup. Ici, “n” est le numéro de l’instance du serveur SQL à laquelle vous êtes connecté. Si vous ne parvenez pas à localiser le répertoire de sauvegarde, copiez l’emplacement du fichier de sauvegarde en cliquant avec le bouton droit de la souris sur la base de données, en sélectionnant Tâches et en cliquant sur Sauvegarder. Dans la fenêtre de la base de données de sauvegarde, cliquez sur le bouton Ajouter dans la section Destination. Copiez l’emplacement du fichier de sauvegarde comme indiqué dans l’image ci-dessous.
Étape 6 : Une fois que vous avez localisé le fichier de sauvegarde, c’est-à-dire Test.bak, cliquez dessus avec le bouton droit de la souris et sélectionnez Propriétés.
Étape 7 : Dans la boîte de dialogue Propriétés de Test.bak, cliquez sur l’onglet Sécurité, puis sur le bouton Avancé.
Étape 8 : Dans la boîte de dialogue “Paramètres de sécurité avancés”, vous devez modifier la configuration des autorisations. Pour cela, cliquez sur le bouton Ajouter.
Étape 9 : Vous devez définir l’autorisation pour tout le monde. Pour ce faire, cliquez sur l’option ‘Select a principal’. Une boîte de dialogue “Sélectionner un utilisateur ou un groupe” s’ouvre alors. Dans cette boîte, entrez “tout le monde” dans la section “Entrez le nom de l’objet à sélectionner”. Cochez Noms et cliquez sur OK.
Étape 10 : Donnez le contrôle total aux utilisateurs pour accéder au fichier et cliquez sur OK.
Étape 11 : Cliquez sur Appliquer, puis sur OK.
Étape 12 : Ouvrez à nouveau SSMS et mettez la base de données que vous avez sauvegardée hors ligne.
Comment restaurer la sauvegarde d’une base de données SQL d’un serveur à un autre ?
Dans cette section, nous allons discuter des étapes pour restaurer la sauvegarde de la base de données SQL Server 2008 R2 sur l’instance de SQL Server 2016.
Remarque : vous pouvez choisir de sauvegarder et de restaurer la base de données de n’importe quelle version de SQL Server.
Étape 1 : Ouvrez SSMS et connectez-vous à une autre instance de SQL Server à partir de laquelle vous souhaitez restaurer la copie de la base de données sauvegardée de l’ancien serveur.
Étape 2 : Créez une base de données portant le même nom que celui que vous souhaitez restaurer. Dans notre exemple, nous avons créé une base de données “Test”.
Étape 3 : Retournez à l’emplacement du fichier de sauvegarde d’origine et copiez le fichier “Test.bak”.
Étape 4 : Collez maintenant le fichier de sauvegarde copié dans un dossier temporaire sur Windows Server 2012 (ou tout autre serveur Windows sur lequel vous prévoyez de restaurer la base de données).
Étape 5 : Cliquez avec le bouton droit de la souris sur la base de données Test, puis sélectionnez Tâches > Restaurer > Base de données.
Étape 6 : Dans la fenêtre “Restaurer la base de données”, cliquez sur le bouton avec 3 points. Lorsqu’une boîte de dialogue “Sélectionner les périphériques de sauvegarde” s’ouvre, cliquez sur Ajouter.
Étape 7 : Dans la boîte de dialogue “Localiser le fichier de sauvegarde”, sélectionnez le fichier de sauvegarde que vous souhaitez restaurer et cliquez sur OK.
Étape 8 : Cliquez à nouveau sur le bouton OK.
Étape 9 : Le fichier ‘Test.bak’ sera ajouté dans la fenêtre ‘Restaurer la base de données’. Cliquez sur OK.
Étape 10 : Cliquez sur OK lorsque la boîte de message “Base de données restaurée avec succès” apparaît.
Après avoir effectué ces étapes, la sauvegarde de la base de données que vous avez effectuée dans une instance du serveur SQL sera restaurée dans l’instance du serveur de destination.
Que se passe-t-il si le processus de sauvegarde et de restauration de la base de données échoue ?
Vous pouvez rencontrer des situations où la sauvegarde que vous voulez restaurer est corrompue, ou la base de données restaurée contient des données manquantes. Cela peut être dû à une corruption de la base de données SQL que vous avez choisi de restaurer sur un autre serveur. Exécutez la commande DBCC CHECKDB suivante pour déterminer si la base de données est corrompue :
DBCC CHECKDB (‘Test’) avec NO)INFOMSGS, ALL_ERRORMSGS ; |
Si cette commande renvoie des erreurs de cohérence, cela signifie que la base de données est corrompue. Exécutez l’option de réparation minimale recommandée “REPAIR_ALLOW_DATA_LOSS” pour résoudre le problème de corruption.
Attention ! L’utilisation de l’option “REPAIR_ALLOW_DATA_LOSS” peut entraîner une perte de données.
Une meilleure alternative consiste à réparer la base de données SQL corrompue à l’aide du logiciel Stellar Repair for MS SQL Technician. Le logiciel aide à réparer les fichiers de base de données MDF/NDF de SQL Server 2019 et des versions antérieures en quelques étapes simples. Téléchargez la version de démonstration gratuite de l’outil de réparation SQL pour réparer la base de données et prévisualiser toutes les données récupérables.
Conclusion
Vous pouvez avoir besoin de sauvegarder et de restaurer une base de données SQL d’un serveur à un autre pour plusieurs raisons, comme la mise à niveau de la version du serveur SQL, la mise en place d’un miroir de base de données, et d’autres raisons décrites dans le blog. Vous pouvez facilement sauvegarder une base de données à partir d’une instance de serveur SQL et restaurer la base de données sauvegardée sur une autre instance de serveur en suivant les instructions détaillées présentées dans le blog. Si la sauvegarde et la restauration échouent en raison de la corruption de la base de données, pensez à utiliser le logiciel Stellar Repair for MS SQL Technician pour réparer et restaurer la base de données sans interruption de service.