MSSQLSERVER_3859
S’applique à : SQL Server
Détails
Attribut | Valeur |
---|---|
Nom du produit | SQL Server |
ID de l’événement | 3859 |
Source de l’événement | MSSQLSERVER |
Composant | SQLEngine |
Nom symbolique | DBCC_CHECKCAT_DIRECT_UPDATE |
Texte du message | Avertissement : Le catalogue système a été mis à jour directement dans l’ID de base de données %d, le plus récemment à %S_DATE |
Explication
Cette erreur indique qu’un utilisateur a apporté des modifications dans les tables système. La mise à jour manuelle des tables système n’est pas prise en charge. Les tables système ne doivent être mises à jour que par le moteur de base de données SQL Server. Lorsque SQL Server détecte les modifications initiées par l’utilisateur dans les tables système, l’erreur 3859 est déclenchée dans les deux scénarios suivants :
Scénario 1
Un événement semblable à ce qui suit est consigné dans le journal des erreurs SQL Server ou dans le journal des applications dans l’Observateur d’événements lorsque vous démarrez une base de données SQL Server qui contient une table système mise à jour manuellement :
Log Name: Application
Source : ID d’événement MSSQLSERVER : 3859
Catégorie de la tâche : Serveur
Niveau : Information
Description : Avertissement : Le catalogue système a été mis à jour directement dans l’ID de base de données %d, récemment à date_timeScénario 2
Le message d’avertissement suivant est retourné lorsque vous exécutez la commande
DBCC_CHECKDB
après la mise à jour manuelle d’une table système :Résultats DBCC pour « nom_base_de_données ».
Msg 8992, Niveau 16, État 1, Ligne 1
Vérifiez le msg 3859 du catalogue, État 1 : Avertissement : le catalogue système a été mis à jour directement dans l’ID de base de données %d, récemment à date_time.
CHECKDB a trouvé 0 erreur d’allocation et 0 erreur de cohérence dans la base de données « nom_base_de_données ».
Exécution de DBCC terminée. Si DBCC a affiché des messages d'erreur, contactez l'administrateur système.
Action utilisateur
Pour résoudre ce problème, utilisez l’une des méthodes suivantes.
Méthode 1
Si vous disposez d’une sauvegarde saine de la base de données, restaurez la base de données à partir de cette sauvegarde.
Remarque
Cette méthode fonctionne uniquement s’il n’y a pas d’incohérences dans les métadonnées de la sauvegarde.
Méthode 2
Si vous ne pouvez pas restaurer la base de données à partir d’une sauvegarde, exportez les données et les objets vers une nouvelle base de données. Ensuite, transférez le contenu de la base de données mise à jour manuellement dans la nouvelle base de données. Remarque : Vous ne pouvez pas corriger les incohérences présentes dans les catalogues système à l’aide des options REPAIR des commandes DBCC CHECKDB. Par conséquent, étant donné qu’elle ne peut pas réparer les métadonnées endommagées, la commande ne fournit aucune recommandation concernant le niveau de réparation.
Remarque
Vous pouvez afficher les données des tables système à l’aide des vues du catalogue système.
Plus d’informations
Pour plus d’informations, consultez : Tables de base système.