Symptômes

Lorsque certains modules sont chargés dans l’espace d’adressage processus Microsoft SQL Server (Sqlservr.exe), vous pouvez rencontrer les problèmes suivants :

  • Rapports de divers messages d’erreur relatifs au blocage et de conditions (par exemple, SQL Server scheduler message comme 17883, application du délai d’attente messages, graves de blocage dans SQL Server)

  • Réponse très lent à partir de SQL Server même si la quantité simultanée de charge n’est pas exceptionnellement élevée

  • Exceptions (telles que les violations d’accès), des messages d’erreur critiques sur la cohérence de la base de données, des messages d’assertion ou arrêt inattendu du processus

  • 100 % de l’UC et de la durée des délais de récupération de base de données lorsque vous utilisez les tables d’OLTP en mémoire dans SQL Server

Cause

Ces problèmes se produisent parce que les applications ou autres logiciels qui sont installés sur un serveur qui exécute SQL Server peut charger certains modules dans le processus SQL Server (Sqlservr.exe). Cela peut se faire pour parvenir à une exigence de la logique métier spécifique, une fonctionnalité améliorée ou de surveillance des intrusions. Ces modules peuvent effectuer des activités non pris en charge qui incluent detouring API Win32 importantes et routines de SQL Server et l’appel d’API à risques. En outre, certains problèmes intrinsèques au sein de ces modules peuvent provoquer l’altération des différentes structures de mémoire sont nécessaires pour le processus SQL Server fonctionne correctement.

Solution de contournement

Avertissement Cette solution de contournement peut rendre un ordinateur ou un réseau plus vulnérable aux attaques d'utilisateurs malintentionnés ou de logiciels malveillants comme les virus. Nous ne recommandons pas cette solution de contournement, mais nous fournissons cette information afin que vous puissiez l'implémenter à votre convenance. Utilisez cette solution de contournement à vos risques et périls.

Pour contourner ce problème, procédez comme suit :

  1. Identifier le module qui est chargé dans le processus SQL Server et qui est à l’origine du problème.

  2. Pour le module en question, effectuez les actions suivantes :

    1. Configurez l’application de ne pas charger le module spécifique dans le processus SQL Server.

    2. Contactez le fournisseur du module ou de l’application pour vérifier les mises à jour. Appliquer les mises à jour sont disponibles.

    3. Dans certains cas rares, vous devrez peut-être supprimer le module et le logiciel associé à restaurer la stabilité au processus SQL Server et le système.

    Remarque Dans certains cas, vous devrez peut-être effectuer toutes ces actions.

Plus d'informations

Équipe de Support technique Microsoft et des Services (CSS) a identifié les modules suivants qui peuvent provoquer les problèmes mentionnés dans la section « Symptômes ». Cette liste sera mis à jour que de nouveaux problèmes sont trouvés. Cette liste est fournie pour vous aider à identifier le processus qui est mentionné dans la section « Résolution ». Ce processus implique généralement la collecte d’un ensemble itératif de diagnostic et de données de suivi pendant toute la durée du problème.

Les modules suivants peuvent provoquer des problèmes de stabilité et de performances lorsqu’elles sont chargées dans le processus SQL Server :

  • ENTAPI.DLL
    ENTAPI. DLL est chargée dans le processus SQL Server si vous installez McAfee VirusScan Enterprise sur un serveur qui exécute Microsoft SQL Server, puis vous configurez ce logiciel pour surveiller SQL Server. Lorsque ce module est chargé, les API de 32 Win importantes sont également detoured à l’intérieur du processus SQL Server. Si vous remarquez que ce module est chargé dans le processus de SQL Server, configurer McAfee VirusScan Enterprise pour exclure le divers surveillance avancée, comme la protection contre le débordement de la mémoire tampon de SQL Server (Sqlservr.exe).

  • HIPI.DLL, HcSQL.dll, HcApi.dll, HcThe.dll
    Ces fichiers DLL sont chargés dans le processus SQL Server si vous installez le logiciel McAfee Host Intrusion Prevention sur le même système que SQL Server. Si vous remarquez que ce module est chargé dans le processus de SQL Server, configurer McAfee Host Intrusion Prevention pour exclure de SQL Server (Sqlservr.exe) à partir de sa liste de surveillance.

  • SOPHOS_DETOURED. DLL et SOPHOS_DETOURED_x64. DLL, SWI_IFSLSP_64.dll
    Ces fichiers DLL sont chargés dans le processus SQL Server si vous installez un programme Antivirus de Sophos sur un serveur qui exécute SQL Server. Si vous remarquez que ce module est chargé dans le processus SQL Server, vous pouvez configurer le AppInit_Dlls la sous-clé de Registre pour éviter de charger ce module dans les processus SQL Server.

  • PIOLEDB. DLL et PISDK. DLL
    Ces fichiers DLL sont chargés dans le processus SQL Server si vous utilisez le fournisseur OLEDB de PI pour accéder aux données à partir d’un serveur de PI ou si vous utilisez des procédures stockées étendues qui utilisent le Kit de développement de PI. Si vous remarquez que ces modules sont chargés dans le processus SQL Server, contactez le fournisseur de ces modules pour configurer le fournisseur OLEDB comme fournisseur d’out-of-process. Cette configuration permet d’éviter la nécessité de charger ces modules dans le processus SQL Server.

Pour plus d’informations sur la façon de définir des stratégies d’exclusion pour Sqlservr.exe dans le logiciel de l’application dont il est question dans cet article, reportez-vous à la documentation du produit ou contactez le fournisseur du logiciel.

Le tableau suivant fournit plus d’informations sur les produits ou les outils de vérification automatique pour cette condition dans votre instance de SQL Server et dans les versions de SQL Server par rapport à laquelle la règle est évaluée.

Logiciel de règles

Titre de la règle

Description de la règle

Versions du produit par rapport à laquelle la règle est évaluée.

System Center Advisor

Modules chargés dans SQL Server qui peuvent provoquer des problèmes de stabilité de serveur

System Center Advisor détermine si la liste des DLL mentionné dans cet article est chargée dans le processus SQL Server. Vérifiez les informations fournies dans la section « Informations collectées » de l’alerte de conseiller et puis apportez les modifications de configuration requis qui sont décrits dans l’article.

SQL Server 2008
SQL Server 2008 R2
SQL Server 2012

Analyseur des meilleures pratiques SQL Server 2008 R2 (SQL Server 2008 R2 BPA)

Appels d’API Windows interceptées

SQL Server 2008 R2 Best Practice Analyzer (BPA SQL Server 2008 R2) fournit une règle pour détecter les modules qui sont chargés à l’intérieur de SQL Server pour prendre en charge la protection contre le débordement de la mémoire tampon. Si vous exécutez l’outil BPA et vous recevez un message d’avertissement qui est intitulé « Moteur - appels Windows API interceptés, » les modules de prise en charge de la protection contre le débordement de la mémoire tampon sont chargées à l’intérieur de SQL Server. BPA détecte en recherchant tous les modules qui ont un nom semblable à « % entapi.dll% » en tant que dans la vue de gestion dynamique (DMV) de sys.dm_os_loaded_modules.

SQL Server 2008
SQL Server 2008 R2
SQL Server 2012

SQL Server 2012 Best Practice Analyzer (BPA de SQL Server 2012)

Appels d’API Windows interceptées

L’analyseur BPA de SQL Server 2012 fournit une règle pour déterminer si la liste des DLL mentionné dans cet article est chargée dans le processus SQL Server. Si vous exécutez l’outil BPA et recevoir un message d’avertissement qui est intitulé « Moteur - appels Windows API interceptés », examiner les informations fournies dans l’instruction « Problème » de l’analyseur BPA et apporter les modifications de configuration requis qui sont décrits dans l’article.

SQL Server 2012


Les produits tiers dont traite cet article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute forme de garantie, expresse ou implicite, concernant les performances ou la fiabilité de ces produits.

Les informations et la solution de ce document représente l’affichage actuel de Microsoft Corporation sur les problèmes à la date de publication. Cette solution est disponible via Microsoft ou un fournisseur tiers. Microsoft ne recommande pas spécifiquement tout fournisseur tiers ou une solution de fournisseur tiers mentionné dans cet article. Il peut exister également d'autres fournisseurs tiers ou solutions tierces non mentionnés dans cet article. Dans la mesure où Microsoft doit s’adapter aux conditions changeantes du marché, ces informations ne doivent pas être interprétées comme un engagement par Microsoft. Microsoft ne peut pas garantir ou l’exactitude des informations ou des solutions présentées par Microsoft ou par tout fournisseur tiers mentionné.

Microsoft ne fournit aucune garantie et exclut toute représentation, garantie et condition explicite, implicite ou prévue par la loi. Celles-ci incluent, mais ne sont pas limités à des représentations, garanties ou conditions de titre, absence de contrefaçon, condition satisfaisante, qualité marchande et adéquation à un usage particulier, en ce qui concerne tout service, solution, produit ou tout autre élément requis ou informations. En aucun cas Microsoft sera tenu responsable de toute solution tierce qui mentionne de cet article.

Références

Pour plus d’informations sur la stratégie de prise en charge de SQL Server, cliquez sur les numéros ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

L’utilisation de détours de tiers ou à des techniques similaires n’est pas pris en charge dans SQL ServerPour plus d’informations sur le processus SQL Server, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :



198891 comment exécuter un objet COM de base de DLL en dehors du processus SQL Server

243428 comment faire pour déplacer des procédures stockées en dehors du processus

Besoin d’aide ?

Développez vos compétences

Découvrez des formations >

Accédez aux nouvelles fonctionnalités en avant-première

Rejoindre Microsoft Insider >

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?

Nous vous remercions de vos commentaires.

×