Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S'applique à :SQL Server
Détails
| Attribut | Valeur |
|---|---|
| Nom du produit | Serveur SQL |
| ID de l’événement | 845 |
| Source de l’événement | MSSQLSERVER |
| Composant | SQLEngine |
| Nom symbolique | Délai d'attente de verrouillage du buffer |
| Texte du message | Dépassement du délai lors de l'attente du type de verrou de mémoire tampon %d, page %S_PGID, ID de base de données %d. |
Explication
Un processus était en attente d’obtention d’un verrou, mais n’a pas pu se le procurer suite à l’expiration du délai. Cette situation peut se produire si une opération d'E/S prend trop de temps à s'accomplir, souvent à cause d'autres tâches qui bloquent les processus système. Dans certains cas, cette erreur peut être le résultat d’une défaillance matérielle.
La cause
Ce message d’erreur dépend de l’environnement global de votre système. L’une des circonstances suivantes peut entraîner un système surstressé :
- Matériel qui ne répond pas à vos besoins en entrées/sorties (E/S) et mémoire
- Paramètres configurés et testés de manière incorrecte
- Conception inefficace
Vous pouvez observer l’erreur 845 lorsque votre système est sous une charge importante et ne peut pas répondre aux demandes de charge de travail. Voici quelques-unes des causes les plus courantes d’un environnement surchargé :
- Problèmes matériels
- Volumes compressés
- Paramètres de configuration SQL Server non définis par défaut
- Requêtes ou conception d’index inefficaces
- Opérations fréquentes de croissance automatique ou autoshrink de base de données
Action de l’utilisateur
Pour prévenir cette erreur, procédez comme suit :
Déterminez si vous êtes en proie à des goulots d’étranglement matériels. Consultez Identifier les goulots d’étranglement pour un bon point de départ. Si nécessaire, mettez à niveau votre matériel pour qu’il puisse répondre aux besoins de votre environnement en matière de configuration, de requêtes et de charge.
Vérifiez que l’ensemble de votre matériel fonctionne correctement. Vérifiez si vous avez des erreurs dans le journal et exécutez tous les diagnostics que votre fournisseur de matériel vous a procurés. Recherchez les erreurs d'E/S assimilées dans le journal des erreurs ou le journal des événements. Les erreurs d'E/S révèlent généralement un disque défectueux.
Vérifiez que vos volumes de disque ne sont pas compressés. Le stockage des données et des fichiers journaux sur les lecteurs compressés n’est pas pris en charge, consultez Fichiers de base de données et groupes de fichiers. Pour plus d’informations sur la prise en charge du lecteur compressé, consultez l’article suivant : Description de la prise en charge des bases de données SQL Server sur des volumes compressés
Vérifiez si les messages d’erreur disparaissent lorsque vous désactivez toutes les options de configuration SQL Server suivantes :
Ajustez les requêtes pour réduire les ressources utilisées sur le système. Le réglage des performances permet de réduire le stress sur un système et d’améliorer le temps de réponse pour les requêtes individuelles.
Définissez la propriété autoshrink sur OFF pour réduire la surcharge des modifications apportées à la taille de votre base de données.
Veillez à définir la propriété de croissance automatique sur des incréments suffisamment volumineux pour être peu fréquents. Planifiez un travail pour vérifier l’espace disponible dans vos bases de données, puis augmentez la taille de la base de données pendant les heures creuses.
Recherchez dans le journal des erreurs les tâches improductives et d’autres erreurs critiques. Résolvez ces erreurs en premier, car elles peuvent révéler la cause racine du problème sous-jacent.
Si des erreurs critiques telles que des assertions se produisent fréquemment, résolvez ces problèmes.
Si les messages d’erreur 845 sont peu fréquents, vous pouvez ignorer les erreurs.