Dépannage
Les serveurs exécutant des bases de données SQL Server peuvent comporter des erreurs spécifiques aux domaines suivants : bases de données marquées comme suspectes, les alertes, sauvegarde et restauration, verrou, travail, services Windows liés à SQL Server, interaction avec le système d'exploitation et récupération et services BizTalk Server relié à SQL Server.
Alertes
Lorsque une alerte ne se déclenche pas, vous devriez suivre les étapes suivantes :
- Vérifiez que les services SQLServerAgent et EventLog sont en cours d'exécution en vérifiant la commande «services.msc».
- Vérifiez que l'événement apparaît dans le journal de bord des applications Windows.
- Démarrez le Windows Event Viewer. Si l'événement ne figure pas dans le journal de bord, vérifiez les paramètres du journal de bord. Dans le menu Log, cliquez sur Log Settings, puis dans la zone Change Settings de la boite Log, sélectionnez Application.
- Consultez également le journal de bord des erreurs SQL Server : Les événements écrits dans le journal de bord des applications Windows sont également écrits dans le journal de bord des erreurs SQL Server. Pour concentrer la recherche sur la cause du problème, comparez les dates et heures des événements entre le journal de bord des erreurs SQL Server, le journal de bord des erreurs de SQL Server Agent et le journal de bord des applications Windows.
- Vérifiez que l'alerte est activée.
- Vérifiez que les valeurs de l'historique de l'alerte (par exemple, le nombre d'occurrences et les dernières valeurs survenues) changent.
- Vérifiez que la valeur du compteur est égale, supérieure ou inférieure à la valeur de seuil définie pendant au moins 20 secondes. L'Agent SQL Server interroge les compteurs de performance toutes les 20 secondes. Toutefois, veuillez noter que l'utilisation d'une fréquence supérieure à 20 secondes augmente la surcharge de traitement pour SQL Server. De plus, si un compteur ne dépasse que quelques secondes, ce qui satisfait à la condition de performance, il est très probable que Agent SQL Server ne puisse pas voir le pic et par conséquent l'alerte ne se déclenchera pas.
Une alerte est déclenchée, mais l'opérateur responsable ne reçoit pas d'avertissement. Vous devriez vérifier les points suivants :
- Vérifiez que les informations relatives à l'opérateur et à l'avertissement pour vous assurer que vous avez entré les adresses de courriel, pager et adresse d'envoi réseau correctes.
- Vérifiez le planificateur de tâche de service de l'opérateur.
- Vérifiez le journal de bord des erreurs de SQL Server Agent pour détecter tout problème de messagerie.
Les causes probables de cette situation incluent :
- Le paramètre Delay (Délai) entre les réponses pour l'alerte est trop élevé.
- La réponse à l'alerte est complexe et nécessite plusieurs avertissement de l'opérateur.
Enfin, envoyez des avertissements au moins d'opérateurs possible. Par exemple, envoyez des avertissements à l'adresse de messagerie d'un groupe plutôt que d'avertir plusieurs opérateurs.
Sauvegarde et de la restauration
Voici quelques problèmes que vous pouvez rencontrer lors de la sauvegarde et de la restauration de bases de données et du journal de bord de transactions :
- Une erreur de syntaxe s'est produite lors de l'utilisation des instructions BACKUP ou RESTORE, cette situation indique que la base de données est en mode de compatibilité SQL Server version 6.5. Les mots clefs BACKUP et RESTORE ne sont valides qu'à partir des bases de données SQL Server 7.0 ou SQL Server 2000. Définissez le niveau de compatibilité de SQL Server sur 80 avant d'utiliser les instructions BACKUP ou RESTORE. Voir l'erreur 156.
- L'instruction BACKUP ne peut pas être exécutée en même temps que la création ou la suppression de fichiers de base de données. Relancez l'opération de sauvegarde une fois que l'opération en conflit est terminée. Voir l'erreur 3023.
- Une base de données en attente ne peut pas être sauvegardée si elle n'a pas encore été récupérée. Utilisez les sauvegardes de votre serveur principal jusqu'à ce que les opérations soient passées en mode veille. Voir l'erreur 3036.
- La sauvegarde en cours de restauration est un format de Microsoft Tape Format valide, mais ne constitue pas une sauvegarde SQL Server. Pour déterminer le contenu de la sauvegarde, utilisez RESTORE HEADERONLY. Voir l'erreur 3143.
- L'ensemble de sauvegarde est une sauvegarde d'une base de données portant le même nom que la base de données sur laquelle vous effectuez la restauration. Toutefois, la base de données en cours de restauration a été créée par une instruction CREATE DATABASE différente de celle de la base de données de l'ensemble de sauvegarde. Remplacez la base de données existante ou restaurez l'ensemble de sauvegarde sous un nom de base de données différent. Voir l'erreur 3154.
- Une tentative d'utilisation d'un périphérique logique n'étant pas un périphérique de sauvegarde défini a été effectuée. Créez le périphérique ou utilisez la syntaxe TAPE= ou DISK= de l'instruction BACKUP. Voir les erreurs 3206 ou 3209.
- La famille de médias s'étend sur plusieurs volumes. L'opération de restauration a déjà traité les données sur le volume spécifié. Remplacez le volume actuel par un volume non encore traité. Voir l'erreur 3227.
- Le périphérique de sauvegarde ne contient pas de données au format Microsoft Tape Format. Voir l'erreur 3242.
- La famille de médias s'étend sur plusieurs volumes. L'opération de restauration devrait traiter le numéro de volume spécifié dans le message d'erreur, mais vous avez plutôt trouvé un numéro de volume différent. Pour continuer l'opération de restauration, remplacez le volume actuel par le numéro de volume spécifié dans le message d'erreur. Voir l'erreur 3247.
- La famille de médias s'étend sur plusieurs volumes. L'ensemble de sauvegarde à traiter par l'opération de restauration démarre sur un volume antérieur à celui inséré dans le périphérique spécifié. Remplacez le volume actuel par un volume contenant le début de l'ensemble de sauvegarde cible. Voir l'erreur 3249.
- L'opération de restauration a complètement traité la famille de supports sur le périphérique nommé et est maintenant prête à réutiliser le périphérique pour restaurer l'une des familles de supports restantes. Remplacez le volume actuel par le premier volume d'une famille de supports n'ayant pas encore été traité. Voir l'erreur 3251.
- L'opération de sauvegarde ayant créé l'ensemble de sauvegarde ne s'est pas terminée correctement. Restaurez une sauvegarde de base de données différente, si vous restaurez une sauvegarde de base de données, et appliquez le journal de bord des transactions; ou appliquez la prochaine sauvegarde du journal de bord des transactions, si vous restaurez une sauvegarde du journal de bord des transactions. Voir l'erreur 3256.
- Le volume sur le périphérique nommé n'appartient pas au même ensemble de supports que les autres volumes en cours de traitement. Supprimez le volume incriminé et insérez le volume suivant de la famille de supports pour les ensembles de supports sur bande magnétique ou, pour les disques, relancez la commande en nommant uniquement les périphériques de sauvegarde faisant partie du même ensemble de supports. Voir l'erreur 3258.
- La bande magnétique insérée dans le périphérique nommé fait partie de l'ensemble de supports actuel et ne peut pas être utilisée comme support de continuation. Remplacez le volume actuel par une nouvelle bande magnétique pouvant être remplacée. Voir l'erreur 3263.
- Le serveur est trop occupé pour effectuer l'opération de sauvegarde ou de restauration. Réessayez l'opération après avoir réduit la charge du serveur. Voir les erreurs 3267 ou 3627.
- Certaines instructions ne sont pas autorisées tant que le modèle de récupération est SIMPLE. Utilisez BACKUP DATABASE ou modifiez le modèle de récupération à l'aide de ALTER DATABASE. Voir erreur 4208.
- Pour restaurer la base de données après une défaillance, vous devez commencer par une sauvegarde complète de la base de données ou par un ensemble complet de sauvegardes de fichiers. Une sauvegarde du journal de bord a été créée avant la première sauvegarde de la base de données ou du fichier. Effectuez une sauvegarde complète de la base de données avant de sauvegarder le journal de bord des transactions. Voir l'erreur 4214.
- L'opération de restauration a détecté un écart entre la dernière restauration et le journal des transactions que vous avez tenté d'appliquer. Appliquez les sauvegardes du journal de bord des transactions dans l'ordre dans lequel elles ont été créées. Voir l'erreur 4305.
- Aucune opération de restauration supplémentaire ne peut être effectuée après la récupération d'une base de données. Redémarrez la séquence de restauration et utilisez l'option NORECOVERY sur toutes les instructions sauf la dernière instruction RESTORE. Voir l'erreur 4306.
- Impossible de récupérer la base de données dans l'état dans lequel elle se trouvait au moment de la sauvegarde du journal de bord en cours. Au moins un fichier a été modifié depuis ce moment. Par conséquent, la récupération n'est pas possible car la base de données resterait dans un état incohérent. Récupérez la base de données à son état le plus récent ou à un moment précis. Voir l'erreur 4318.
- Un fichier de sauvegarde n'a pas pu être utilisé car il était initialement formaté avec une taille de secteur et se trouve maintenant sur un périphérique avec une taille de secteur différente. Le SQL Server utilise des entrées/sorties sans tampon, cette situation nécessite l'alignement des secteurs. Vous devez restaurer l'ensemble de sauvegarde à partir d'un disque ayant la même taille de secteur ou sur un réseau utilisant des entrées/sorties en mémoire tampon. Vous pouvez également spécifier une clause WITH BLOCKSIZE lorsque vous sauvegardez la base de données.
Services BizTalk Server relié à SQL Server
Les problèmes de SQL Server avec BizTalk Server sont principalement relié au 3 raisons suivantes : problème de connexion, problème d'autorisation et de droits d'accès, problèmes relié à la taille de la base de données.
Remarque
- Si vous avez l'erreur dans le journal de bord des erreurs SQLServerAgent sur les serveurs de systèmes d'exploitation Windows 95 ou Windows 98 : «The common event system is being restarted after function ProduceEventsFromSS returned error 44, 'Unable To Connect'». Cette situation peut indiquer des informations de serveur enregistrées incorrectes. Vérifiez que les informations de serveur enregistré pour le serveur local sont correctes et que le nom de connexion enregistré est un membre du rôle de serveur fixé par sysadmin.