Espacio de direcciones de los problemas de rendimiento y coherencia cuando se cargan determinados módulos en SQL Server

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 2033238
Síntomas
Cuando se cargan determinados módulos en el espacio de direcciones del proceso de Microsoft SQL Server (Sqlservr.exe), experimenta los síntomas siguientes:
  • Informes de varios mensajes de error relacionados con el bloqueo y las condiciones (por ejemplo, SQL Server scheduler mensaje como 17883, tiempo de espera mensajes de la aplicación, graves de bloqueo en SQL Server)
  • Respuesta muy lento en SQL Server incluso si la cantidad de carga simultánea no es inusualmente alto
  • Excepciones (por ejemplo, infracciones de acceso), mensajes de errores críticos acerca de la coherencia de la base de datos, mensajes de aserción o terminación inesperada del proceso
  • 100% de la CPU y los largos tiempos recuperación base de datos al utilizar tablas OLTP que en la memoria en SQL Server
Causa
Estos problemas se producen porque las aplicaciones u otro software que se instalan en un servidor que ejecuta SQL Server puede cargar ciertos módulos en el proceso de SQL Server (Sqlservr.exe). Esto puede hacerse para lograr un requisito de lógica de negocio específico, una funcionalidad mejorada o supervisión de intrusiones. Estos módulos pueden realizar actividades no compatibles que incluyen desviarlas importante API de Win32 y rutinas de SQL Server y llamar a la API peligrosas. Además, algunos problemas intrínsecos dentro de estos módulos pueden provocar daños de diversas estructuras de memoria que son necesarios para que funcione correctamente el proceso de SQL Server.
Solución
Advertencia esta solución puede hacer que un equipo o una red sean más vulnerables a los ataques de usuarios malintencionados o de software malintencionado como los virus. No recomendamos esta solución, pero proporcionamos esta información para que puede implementar esta solución temporal a su propia discreción. Utilice esta solución bajo su propia responsabilidad.

Para evitar este problema, siga estos pasos:
  1. Identificar el módulo que se carga en el proceso de SQL Server y que está causando el problema.
  2. Para el módulo en cuestión, realice las siguientes acciones:
    1. Configurar la aplicación para que no cargue el módulo específico en el proceso de SQL Server.
    2. Póngase en contacto con el proveedor del módulo o la aplicación para comprobar las actualizaciones. Aplicar las actualizaciones que están disponibles.
    3. En algunos casos raros, tendrá que quitar el módulo y el software asociado para restaurar la estabilidad en el proceso de SQL Server y el sistema.
    Nota: En algunos casos, tendrá que realizar todas estas acciones.
Más información
Equipo de asistencia al cliente de Microsoft y servicios (CSS) ha identificado los siguientes módulos que pueden ocasionar los síntomas que se mencionan en la sección "Síntomas". Esta lista se actualizará cuando se encuentran nuevos problemas. Esta lista se proporciona para ayudarle a identificar el proceso que se menciona en la sección "Solución". Este proceso normalmente implica la recopilación de un conjunto de datos de seguimiento y diagnóstico iterativo para la duración del problema.

Los siguientes módulos pueden causar problemas de rendimiento y estabilidad cuando se cargan en el proceso de SQL Server:
  • ARCHIVO ENTAPI. DLL
    ARCHIVO ENTAPI. DLL se carga en el proceso de SQL Server si instala McAfee VirusScan Enterprise en un servidor que está ejecutando Microsoft SQL Server y, a continuación, configurar este software para supervisar SQL Server. Cuando se carga este módulo, importante las de Win 32 API también se desviado hacia dentro del proceso de SQL Server. Si observa que este módulo se carga en el proceso de SQL Server, configurar McAfee VirusScan Enterprise para impedir que varios avanzadas de monitoreo, como protección contra desbordamiento de búfer de SQL Server (Sqlservr.exe).
  • HIPI. DLL, HcSQL.dll, HcApi.dll, HcThe.dll
    Estos archivos DLL se cargan en el proceso de SQL Server si instala software McAfee Host Intrusion Prevention en el mismo sistema que SQL Server. Si observa que este módulo se carga en el proceso de SQL Server, configurar McAfee Host Intrusion Prevention para excluir de SQL Server (Sqlservr.exe) de su lista de supervisión.
  • SOPHOS_DETOURED. DLL y SOPHOS_DETOURED_x64. DLL, SWI_IFSLSP_64.dll
    Estos archivos DLL se cargan en el proceso de SQL Server si instala programa Sophos Antivirus en un servidor que está ejecutando SQL Server. Si observa que este módulo se carga en el proceso de SQL Server, puede configurar el AppInit_Dlls subclave del registro para evitar cargar este módulo en proceso de SQL Server.
  • PIOLEDB. DLL y PISDK. DLL
    Estos archivos DLL se cargan en el proceso de SQL Server si utiliza el proveedor OLEDB de PI para tener acceso a datos desde un servidor de PI o si utiliza procedimientos almacenados extendidos que usan el SDK de PI. Si observa que estos módulos se cargan en el proceso de SQL Server, póngase en contacto con el proveedor de estos módulos para configurar el proveedor OLEDB como un proveedor fuera de proceso. Esta configuración ayuda a evitar la necesidad de cargar estos módulos en el proceso de SQL Server.
Para obtener más información acerca de cómo configurar directivas de exclusión para Sqlservr.exe en el software de aplicación que se describe en este artículo, consulte el manual del producto o póngase en contacto con el fabricante del software.

En la tabla siguiente proporciona más información acerca de los productos o herramientas que comprueban automáticamente si esta condición en su instancia de SQL Server y en las versiones de SQL Server con el que se evalúa la regla.

Software de reglaTítulo de la reglaDescripción de la reglaVersiones del producto con el que se evalúa la regla
Asesor de System CenterMódulos cargados en SQL Server que puede provocar problemas de estabilidad del servidorSystem Center Advisor determina si la lista de archivos DLL que se mencionan en este artículo se carga en el proceso de SQL Server. Revise la información que se proporciona en la sección "La información recogida" de la alerta del Asesor y realice los cambios requeridos en la configuración que se describen en el artículo.SQL Server 2008
SQL Server 2008 R2
SQL Server 2012
SQL Server 2008 R2 Best Practice Analyzer (SQL Server 2008 R2 BPA)Interceptadas llamadas a API de WindowsSQL Server 2008 R2 Best Practices Analyzer (BPA, SQL Server 2008 R2) proporciona una regla para detectar los módulos para que admita la protección contra desbordamiento de búfer que se cargan dentro de SQL Server. Si ejecuta la herramienta BPA y recibe un mensaje de advertencia que se titula "Motor - interceptadas llamadas a API de Windows" se cargan los módulos para admitir la protección contra desbordamiento de búfer dentro de SQL Server. BPA detecta esto buscando todos los módulos que tienen un nombre similar a "% entapi.dll%" que se encuentra en la vista de administración dinámica (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)Interceptadas llamadas a API de WindowsEl BPA de SQL Server 2012 ofrece una regla para determinar si la lista de archivos DLL que se mencionan en este artículo se carga en el proceso de SQL Server. Si ejecuta la herramienta BPA y se recibe un mensaje de advertencia que se titula "Motor - interceptadas llamadas a API de Windows", revise la información proporcionada en la instrucción de "Emisión" de lo BPA y realice los cambios necesarios que se describen en el artículo.SQL Server 2012

Los productos de terceros que se indican este artículo están fabricados por compañías independientes de Microsoft. Microsoft no otorga ninguna garantía, implícita o de otro tipo, respecto al rendimiento o confiabilidad de estos productos.

La información y la solución en este documento representa la visión actual de Microsoft Corporation sobre estos problemas a partir de la fecha de publicación. Esta solución está disponible a través de Microsoft o a través de un proveedor de terceros. Microsoft no recomienda específicamente cualquier proveedor de terceros o una solución de terceros mencionados en este artículo. También pueden existir otros proveedores o soluciones de terceros que no se describe en este artículo. Dado que Microsoft debe responder a condiciones de mercado cambiantes, esta información no debe interpretarse como un compromiso por Microsoft. Microsoft no puede garantizar ni respaldar la exactitud de la información o de cualquier solución que se presenta por Microsoft o por cualquier proveedor de terceros mencionado.

Microsoft no otorga ninguna garantía y excluye todas las representaciones, garantías y condiciones ya sea expresa, implícita o legal. Éstos incluyen, pero no se limitan a las representaciones, garantías o condiciones de título, no infracción, condición satisfactoria, comerciabilidad y aptitud para un fin determinado, con respecto a cualquier servicio, solución, producto, o cualquier otro material o información. En ningún caso será responsable Microsoft de ninguna solución de terceros que se mencionan en este artículo.
Referencias
Para obtener más información acerca de la directiva de soporte técnico de SQL Server, haga clic en los números de artículo siguientes para ir al artículo en Microsoft Knowledge Base:

Para obtener más información acerca del proceso de SQL Server, haga clic en los números de artículo siguientes para ir a los artículos en Microsoft Knowledge Base:

198891 Cómo ejecutar un objeto COM basado en DLL fuera del proceso de SQL Server
243428 Cómo mover extendido procedimientos almacenados fuera de proceso

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 2033238 - Última revisión: 08/31/2016 15:14:00 - Revisión: 5.0

Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems, Microsoft SQL Server 2005 Enterprise X64 Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Express Edition with Advanced Services, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Standard X64 Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Express with Advanced Services, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Express with Advanced Services, Microsoft SQL Server 2012 Analysis Services, Microsoft SQL Server 2012 Business Intelligence, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web, Microsoft SQL Server 2012 Enterprise Core

  • kbmt KB2033238 KbMtes
Comentarios