décembre 14, 2021

Guide Complet pour la Vérification de l’Intégrité de la Base de Données SQL

Table des Matières

  • À propos de la Vérification de l’Intégrité de la Base de Données SQL
  • À Quelle fréquence Devez-Vous Exécuter des Vérifications de l’Intégrité de la Base de données SQL Server ?
  • Comment vérifier l’intégrité de la base de données dans SQL Server?
  • Utiliser SQL Server Management Studio
  • Utiliser La Tâche de Vérification de l’intégrité de la base de données
  • Que faire Si la vérification de l’intégrité de la base de données Échoue ?
  • Alternative pour corriger les erreurs de cohérence de la base de données SQL
  • Conclusion

À propos du contrôle d’intégrité de la base de données SQL

Effectuer des contrôles d’intégrité fait partie du plan de maintenance de la base de données SQL Server qui permet d’assurer la cohérence de la base de données.

Pour être plus précis, l’exécution de contrôles d’intégrité permet de maintenir l’efficacité de la base de données de production ou de la sauvegarde restaurée en détectant les erreurs de cohérence (corruption) dans la base de données.

À Quelle Fréquence Devez-Vous Exécuter des Contrôles d’intégrité de Base de données sur la Base de données SQL Server ?

Effectuer des contrôles d’intégrité peut être un processus long et exigeant en ressources. Il est donc important de comprendre à quelle fréquence vous devez effectuer des contrôles d’intégrité. Pour décider cela, prenons deux exemples:

  • Votre base de données SQL est devenue corrompue ou endommagée. Vous n’avez pas de sauvegardes. La seule façon de restaurer la base de données est d’exécuter l’option de réparation, ce qui implique un risque de perte de données. Dans ce cas, l’exécution régulière de contrôles d’intégrité (quotidiens ou horaires) peut détecter rapidement la corruption de la base de données, minimisant ainsi les pertes de données et les temps d’arrêt.
  • Vous disposez d’une stratégie de sauvegarde de base de données complète, vous permettant de restaurer une base de données SQL sans perte de données et temps d’arrêt minimes ou minimes. Dans ce cas, vous pouvez envisager d’effectuer des contrôles d’intégrité une fois par semaine.

Comment vérifier l’intégrité de la base de données dans SQL Server?

Voici les deux méthodes pour vérifier l’intégrité de la base de données SQL :

Méthode 1 – Utilisez SQL Server Management Studio (SSMS)

  • Ouvrez SSMS et connectez-vous à votre instance SQL Server.
  • Dans Bases de données, cliquez avec le bouton droit sur la base de données pour laquelle vous souhaitez effectuer des vérifications d’intégrité, puis cliquez sur l’option Nouvelle requête.
  • Dans la fenêtre ‘Nouvelle requête’, tapez DBCC CHECKDB, puis cliquez sur le bouton Exécuter pour exécuter la requête.

Si vous exécutez le rapport de requête « 0 erreur d’allocation et 0 erreur de cohérence « , cela signifie que la base de données est saine. S’il signale des erreurs de cohérence, vérifiez le niveau minimum de réparation recommandé que vous devrez effectuer au bas du résumé du message (reportez-vous à l’image ci-dessous):

 Exécution de la DBCC CHECKDB pour Exécuter la Vérification de l'intégrité de la Base de données

Figure 1 – Exécution de la DBCC CHECKDB pour exécuter la Vérification de l’intégrité de la Base de données

Méthode 2 – Utilisez la Tâche de vérification de l’intégrité de la base de données

Suivez ces étapes pour vérifier l’intégrité de la base de données à l’aide de  » Tâche de vérification de l’intégrité de la base de données  » dans SQL Server Integration Services (SSIS):

  • Ouvrez les outils de données SQL Server (SSDT).
 Outils de Données SQL Server
  • Dans la fenêtre qui s’ouvre, cliquez sur Fichier > Nouveau projet >.
Select-New-Project
  • Dans la fenêtre « Nouveau projet » qui apparaît, sélectionnez Projet Integration Services, puis cliquez sur OK.
 sélectionnez un Projet de Services d'Intégration
  • Sous Boîte à outils SSIS, sous Autres tâches, double-cliquez sur l’option Vérifier l’intégrité de la base de données. La tâche aide à vérifier l’intégrité logique et physique des objets de base de données.
 double-cliquez sur l'option Vérifier l'intégrité de la base de données
  • Double-cliquez sur la zone de tâche Vérifier l’intégrité de la base de données. Cela ouvrira une fenêtre contextuelle « Vérifier la tâche d’intégrité de la base de données « . Dans cette fenêtre, créez une nouvelle connexion en cliquant sur le bouton Nouveau.
Create-New-Database-Connection
  • Dans la boîte de dialogue « Propriétés de connexion » qui s’ouvre, entrez le nom de la connexion, le nom de votre serveur SQL et choisissez la méthode d’authentification Windows (recommandée). Cliquez sur OK.
 Propriétés de Connexion
  • Cliquez sur la flèche déroulante à côté de Base(s) de données : zone de texte. Sélectionnez une ou plusieurs bases de données pour lesquelles vous souhaitez effectuer des vérifications d’intégrité. Appuyez sur OK.
 flèche déroulante à côté de la ou des bases de données)
  • Vous pouvez éventuellement cliquer sur le bouton Afficher T-SQL pour afficher l’instruction DBCC CHECKDBA afin d’effectuer une vérification d’intégrité planifiée sur la ou les bases de données sélectionnées.
 Bouton Afficher T-SQL

Remarque: Cochez la case « Inclure les index » si vous souhaitez également effectuer des vérifications d’intégrité sur les pages d’index de la base de données.

  • Instruction DBCC CHECKDB pour exécuter une vérification d’intégrité planifiée.
 Instruction DBCC CHECKDB
  • Double-cliquez sur la tâche Exécuter l’instruction T-SQL et ajoutez les tâches avec une contrainte.
  • Cliquez sur le bouton  » Démarrer le débogage  » pour exécuter le package  » Vérifier l’intégrité de la base de données  » pour exécuter toutes les tâches que vous avez créées.

 Démarrer le débogage

Les tâches seront affichées avec un statut vert si tout est OK.

Mais, parfois, les contrôles d’intégrité peuvent échouer et afficher des erreurs. Cela se produira lorsque la base de données SQL est corrompue.

Que faire si la vérification de l’intégrité de la base de données SQL échoue ?

Si la vérification de l’intégrité de la base de données SQL échoue sur une base de données, il est conseillé de restaurer la base de données SQL à partir de la dernière sauvegarde. Si vous n’avez pas de sauvegardes, vous pouvez effectuer le processus de réparation de la base de données en exécutant la commande DBCC CHECKDB avec l’option ‘REPAIR_ALLOW_DATA_LOSS’.

Lisez ceci : Comment réparer une base de données SQL à l’aide de la commande DBCC CHECKDB ?

L’option ‘REPAIR_ALLOW_DATA_LOSS’ peut corriger les erreurs de cohérence de la base de données. Cependant, cela ne permet que de corriger la structure physique de la base de données, pas l’intégrité des données internes. En d’autres termes, l’exécution de la commande DBCC CHECKDB avec l’option ‘REPAIR_ALLOW_DATA_LOSS’ peut entraîner une perte de données.

Vous pouvez également corriger les erreurs de cohérence de la base de données SQL en exécutant la commande ‘REPAIR_REBUILD’. La commande est généralement utilisée pour corriger les problèmes dans les index non groupés. Cette option n’entraîne pas de perte de données.

Alternative pour corriger les erreurs de cohérence de la base de données SQL

Si l’exécution de la commande DBCC CHECKDB n’a pas réussi à préserver l’intégrité et la cohérence des données de votre base de données SQL Server, vous pouvez utiliser un autre outil de réparation de base de données SQL, tel que Stellar Repair for MS SQL, pour résoudre le problème.

Le logiciel répare les fichiers MDF / NDF de la base de données SQL gravement corrompus tout en préservant l’intégrité des données. Il peut corriger la corruption dans les bases de données SQL sur les systèmes Windows et Linux. L’outil de réparation SQL peut récupérer tous les objets de base de données, y compris les enregistrements de table supprimés des versions SQL 2019, 2017, 2016 et des versions antérieures.

Conclusion

Lors de l’exécution de SQL Server, vérifiez périodiquement l’intégrité de la base de données pour vous assurer que la base de données est saine et qu’elle n’est pas corrompue. Cet article explique les étapes à suivre dans SSIS pour effectuer des vérifications d’intégrité sur une base de données SQL Server. Il discute également de l’utilisation de la commande DBCC CHECKDB avec des options de réparation lorsque votre vérification d’intégrité échoue. Mais, l’exécution de DBCC CHECKDB avec la commande ‘REPAIR_ALLOW_DATA_LOSS’ peut entraîner une perte de données et provoquer des erreurs d’incohérence. Dans ce cas, une meilleure alternative consiste à utiliser Stellar Repair pour MS SQL pour corriger les erreurs de cohérence de la base de données sans risque de perte de données.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.