Il peut être nécessaire d’effectuer une opération de réparation de la base de données SQL dans les cas suivants :
- Réparer une base de données marquée comme suspecte ou bloquée en attente de récupération, ce qui vous empêche d’accéder aux fichiers de la base de données.
- Réparer une base de données qui s’est corrompue à la suite d’événements tels qu’une panne de serveur, une défaillance du sous-système d’E/S, des bogues logiciels, une intrusion de virus/programmes malveillants, etc.
- Si vous recevez des erreurs SQL telles que 824, 8992, 5172, etc.
- Si vous avez un fichier journal corrompu qui a rendu la base de données inaccessible.
Lire aussi : Corruption de la base de données de production de SQL Server – Causes et solutions
Normalement, tout administrateur de base de données ou utilisateur SQL dispose d’une stratégie de sauvegarde et de récupération. Cependant, vous ne pouvez restaurer une base de données SQL à partir d’une sauvegarde que si elle est saine. De plus, vous devez restaurer la sauvegarde la plus récente pour éviter toute perte de données. Mais si la sauvegarde est corrompue ou si elle n’est pas mise à jour, vous devrez la réparer.
Voyons maintenant en détail comment réparer la base de données SQL Server 2016, étape par étape.
Réparation de la base de données SQL Server étape par étape
Etapes pour réparer une base de données SQL via SSMS
Vous pouvez réparer une base de données en utilisant la commande DBCC CHECKDB avec ‘REPAIR_ALLOW_DATA_LOSS’ en exécutant les étapes suivantes dans SQL Server Management Studio (SSMS) :
Étape 1 : Lancez SSMS. Connectez-vous à l’instance de SQL Server 2016 en utilisant l’authentification Windows ou l’authentification SQL Server.
Étape 2 : Cliquez sur l’onglet Nouvelle requête dans la barre d’outils. Dans la fenêtre de requête qui s’ouvre, copiez et collez les commandes suivantes dans l’ordre indiqué ci-dessous :
EXEC sp_resetstatus [DB_Name]
ALTER DATABASE [DB_Name] SET EMERGENCY
DBCC CHECKDB [Nom_de_la_DB]
ALTER DATABASE [DB_Name] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CHECKDB (‘Nom_DB’, REPAIR_ALLOW_DATA_LOSS) AVEC NO_INFOMSGS
ALTER DATABASE [Nom de la base de données] SET MULTI_USER
Remarque : l’exécution de la commande REPAIR_ALLOW_DATA_LOSS peut entraîner une perte de données. Si DBCC CHECKDB ne fonctionne pas ou pour éviter la perte de données, l’utilisation d’un outil de réparation SQL peut s’avérer utile.
Étape 3 : Cliquez sur le bouton “Exécuter” pour commencer la réparation de la base de données. La
base de données sera réparée et s’ouvrira sans aucune erreur.
Etapes de la réparation d’une base de données SQL à l’aide de Stellar Repair for MS SQL
Stellar Repair for MS SQL est un outil de réparation SQL avancé recommandé par les MVPs et les DBA. Il permet de réparer les fichiers de base de données (MDF/NDF) gravement corrompus en quelques étapes simples. Il permet également de récupérer tous les objets de la base de données ainsi que les enregistrements supprimés.
Comment réparer la base de données SQL Server 2016 en utilisant le logiciel SQL Recovery
Étape 1 : Lancer le logiciel. Lisez les instructions affichées dans la fenêtre de l’interface principale du logiciel, puis cliquez sur OK.
Étape 2 : Sur l’écran “Sélectionner une base de données”, parcourez et sélectionnez le fichier primaire de la base de données (.mdf) que vous souhaitez réparer. Vous pouvez également cliquer sur Rechercher pour localiser un fichier MDF si son emplacement est inconnu.
Remarque : si vous souhaitez récupérer les enregistrements supprimés, assurez-vous que la case “Inclure les enregistrements supprimés” est cochée.
Étape 3 : Après avoir sélectionné un fichier MDF, cliquez sur Réparer pour lancer le processus de réparation.
Étape 4 : Choisissez un mode d’analyse approprié pour réparer le fichier MDF. L’option d’analyse standard permet d’analyser rapidement le fichier à la recherche d’erreurs de corruption. Pour une analyse approfondie du fichier, vous pouvez sélectionner l’option Analyse avancée. Cliquez sur OK pour continuer.
Étape 5 : Cliquez sur le bouton OK lorsque le message “Réparation terminée” s’affiche.
Étape 6 : Prévisualisation de toutes les données du fichier réparé. Ensuite, sélectionnez tous les objets ou des objets spécifiques que vous souhaitez enregistrer en cliquant sur le bouton Enregistrer sous Fichier.
Étape 7 : Le logiciel propose différentes options pour enregistrer la base de données réparée :
- Choisissez le format de fichier (MDF/CSV/HTML/XLS) dans lequel vous souhaitez enregistrer le fichier réparé.
- En sélectionnant le format d’enregistrement du fichier MDF, vous pouvez choisir d’enregistrer la base de données en tant que New ou Live db. En outre, entrez les détails pour vous connecter à votre instance de SQL Server.
- Indiquez l’emplacement où vous souhaitez enregistrer le fichier réparé.
Étape 8 : Cliquez sur Enregistrer. Une fois la procédure d’enregistrement des fichiers terminée, l’écran suivant s’affiche.
La base de données réparée sera enregistrée sous le même nom mais avec le préfixe “Réparé” à l’emplacement spécifié.
Conclusion
Dans cet article, nous avons parlé des cas les plus courants qui peuvent nécessiter la réparation d’une base de données SQL. Avant d’essayer d’exécuter une opération de réparation, vous devez d’abord essayer de restaurer une sauvegarde mise à jour. Mais si la sauvegarde est corrompue ou obsolète, suivez les étapes décrites dans l’article pour résoudre le problème. Vous pouvez exécuter DBCC CHECKDB avec l’option de réparation recommandée, généralement REPAIR_ALLOW_DATA_LOSS, pour effectuer le processus de réparation. Cependant, cela implique un risque de perte de données. Vous pouvez également utiliser Stellar Repair for MS SQL pour corriger les erreurs de corruption courantes qui vous empêchent d’accéder à la base de données.
Was this article helpful?