Qu’est-ce qu’un AVERTISSEMENT: Le nom de la base de données db est SUSPECT?

 Qu'est-ce que l'AVERTISSEMENT: La base de données db-name est SUSPECTE

Qu’est-ce que l’AVERTISSEMENT: La base de données < db-name > est SUSPECTE? Vous avez probablement vu une base de données marquée comme SUSPECTE dans SSMS et vous ne savez pas ce qu’elle représente. Lisez l’article ci-dessous pour en savoir plus à ce sujet!

Qu’est-ce qu’un AVERTISSEMENT: Le nom de la base de données db est SUSPECT?

Parfois, nous pouvons être confrontés à une situation critique, car notre base de données SQL Server passe en mode Suspect. À ce stade, la base de données ne peut plus être utilisée et aucun travail ne peut être effectué.

La principale raison pour laquelle la base de données passe en mode suspect est que le groupe de fichiers principal a été endommagé et que la base de données ne peut pas être récupérée lors du démarrage du serveur SQL.

En outre, la base de données peut se retrouver dans l’état SUSPECT pour plusieurs autres raisons, notamment:

      • un dysfonctionnement du système qui pourrait être causé par un arrêt incorrect du serveur de base de données
      • un fichier JOURNAL endommagé ou un fichier MDF endommagé
      • au cas où il n’y aurait plus d’espace sur le disque
      • SQL Server ne peut pas effectuer une opération de roll forward ou de rollback
      • limitations en termes d’espace pour les systèmes de fichiers FAT32 et d’autres raisons

Pour réparer la base de données et récupérer de cet état, vous devrez effectuer les étapes suivantes:

    • Nous allons commencer par changer l’état de la base de données en exécutant la procédure stockée sp_resetstatus
 EXEC sp_resetstatus ' TestDB'
      • Réglez la base de données en mode « Urgence »
 MODIFIER LA BASE DE DONNÉES TestDB SET EMERGENCY;
      • Vérifiez la base de données pour toute incohérence possible
 DBCC checkdb('TestDB');
      • Si vous rencontrez des erreurs pendant la phase DBCC, mettez immédiatement la base de données en MODE UTILISATEUR UNIQUE à l’aide de la requête ci-dessous:
 ALTER DATABASE TestDB SET SINGLE_USER AVEC RESTAURATION IMMÉDIATE;
      • De plus, à ce stade, pour des raisons de sécurité, nous vous recommandons de faire une sauvegarde de la base de données
      • Après avoir terminé la sauvegarde de la base de données, vous devez exécuter la requête suivante. Mais rappelez-vous que lors de l’utilisation de la requête suivante, avec le paramètre REPAIR_ALLOW_DATA_LOSS, vous exécutez une opération à sens unique qui réparera votre base de données mais toutes les actions effectuées au cours de ce processus ne peuvent pas être annulées. Il n’y a pas de solution pour revenir à un état précédent de la base de données, c’est pourquoi nous vous recommandons fortement de faire la sauvegarde que nous avons suggérée au point précédent
 DBCC CheckDB('TestDB', REPAIR_ALLOW_DATA_LOSS);
      • La dernière requête que vous devez exécuter consiste à définir la base de données en mode MULTI-UTILISATEURS
 MODIFIER LA BASE DE DONNÉES TestDB SET MULTI_USER;
      • La dernière étape consiste à actualiser votre serveur de base de données et à vérifier que la connectivité à votre base de données fonctionne. Après ce point, les utilisateurs devraient avoir la possibilité de se connecter à la base de données. En cas de perte de données, vous pouvez restaurer la base de données que vous avez précédemment sauvegardée

Laisser un commentaire

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

More: