REVISIÓN: Una infracción de acceso se registra en el archivo de registro de errores de SQL Server cuando ejecuta una consulta que utiliza a una guía de plan en SQL Server 2005

Seleccione idioma Seleccione idioma
Id. de artículo: 928539 - Ver los productos a los que se aplica este artículo
Nº de error: 50000452 (revisión SQL)
Aviso
Microsoft distribuye correcciones de Microsoft SQL Server 2005 como un archivo descargable. Como las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad incluidas en el anterior de SQL Server 2005.
Expandir todo | Contraer todo

En esta página

En este artículo describe lo siguiente acerca de esta versión de revisión:
  • Los problemas que corrigen este paquete de hotfix
  • Los requisitos previos para instalar el paquete de hotfix
  • Información acerca de si debe reiniciar o no el equipo después de instalar el paquete de hotfix
  • Información acerca de si queda reemplazado o el paquete de hotfix no por otro paquete de hotfix
  • Información acerca de si deben hacer cambios en el registro
  • Archivos contenidos en el paquete de hotfix

Síntomas

Cuando ejecuta una consulta que utiliza a una guía de plan en SQL Server 2005, la consulta intermitentemente puede dar error. Además, se registra una infracción de acceso similar al siguiente en el archivo de registro de errores de SQL Server:
2006-08-23 13:34:10.48 spid438 *** volcado de pila que se envían al H:\MSSQL\LOG\SQLDump0016.txt
2006-08-23 13:34:10.48 spid438 SqlDumpExceptionHandler: proceso 438 genera excepción fatal c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server está finalizando este proceso.
2006-08-23 13:34:10.48 spid438 * *******************************************************************************
2006-08-23 13:34:10.48 spid438 *
2006-08-23 13:34:10.48 spid438 * BEGIN STACK DUMP:
2006-08-23 13:34:10.48 spid438 * 23/08/06 13:34:10 spid 438
2006-08-23 13:34:10.48 spid438 *
2006-08-23 13:34:10.48 spid438 *
2006-08-23 13:34:10.48 spid438 * dirección de excepción = 00000000034CE1D0 Module(sqlservr+00000000024CE1D0)
2006-08-23 13:34:10.48 spid438 * código de excepción = c0000005 EXCEPTION_ACCESS_VIOLATION
2006-08-23 13:34:10.48 spid438 * se ha producido una infracción de acceso lectura dirección 0000000000000010
El problema se produce cuando se cumplen las condiciones siguientes:
  • La consulta utiliza a una guía de plan.
  • La consulta acepta algunos parámetros.
  • La Guía de plan aplica la sugerencia OPTIMIZE FOR para la consulta.
  • Antes de ejecutar la consulta, se recompila la consulta.

Solución

Hay una revisión compatible de Microsoft. Sin embargo, esta revisión se diseñó para corregir el problema descrito en este artículo. Aplíquela sólo a los sistemas que experimenten este problema específico. Esta revisión podría sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la siguiente actualización de software que contenga este hotfix.

Si la revisión está disponible para descarga, es hay una sección de "Descarga de revisión disponible" al principio de este artículo. Póngase en contacto si no aparece en esta sección, con los Microsoft cliente Servicios de y soporte técnico para obtener la revisión de.

Nota Si se producen problemas adicionales o si cualquier solución de problemas es necesario, quizás tenga que crear una solicitud de servicio independiente. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con esta revisión específica. Para obtener una lista completa de números de teléfono de servicio de atención al cliente y soporte técnico o para crear una solicitud de servicio independiente, visite el siguiente sitio Web:
http://support.microsoft.com/contactus/?ws=support
Nota El formulario "Descarga de revisión disponibles" muestra los idiomas para que la revisión está disponible. Si no ve su idioma, es porque una revisión no está disponible para ese idioma.

Requisitos previos

Debe estar ejecutando SQL Server 2005 Service Pack 1 (SP1) para aplicar esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
913089Cómo obtener el service pack más reciente para SQL Server 2005

Información de reinicio

No es necesario reiniciar el equipo después de aplicar este hotfix.

Información del registro

No es necesario cambiar el registro.

Información de archivos de hotfix

Este hotfix contiene sólo los archivos necesarios para corregir los problemas recogidos en este artículo. Esta revisión no puede contener todos los archivos que debe tener para actualizar plenamente un producto a la compilación más reciente.

La versión en inglés de este hotfix tiene los atributos de archivo (o atributos de último archivo) mostrados en la siguiente tabla. Las fechas y las horas de estos archivos se muestran en hora universal coordinada (UTC). La información de los archivos se convertirá a la hora local cuando la vea. Para averiguar la diferencia entre hora UTC y la hora local, utilice la ficha zona horaria el elemento fecha y hora en el panel de control.
SQL Server 2005 versión 32
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Logread.exe2005.90.2206.0398,11217 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.AdomdClient.dll9.0.2206.0543,52017 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.deploymentengine.dll9.0.2206.0138,01617 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.dll9.0.2206.01,215,26417 De noviembre de 200616: 11x 86
Microsoft.SqlServer.mgdsqldumper.dll2005.90.2206.075,55217 De noviembre de 200616: 11x 86
Microsoft.SqlServer.SqlEnum.dll9.0.2206.0908,06417 De noviembre de 200616: 11x 86
Msasxpress.dll9.0.2206.022,30417 De noviembre de 200616: 11x 86
Msgprox.dll2005.90.2206.0197,92017 De noviembre de 200616: 11x 86
Msmdlocal.dll9.0.2206.015,614,75217 De noviembre de 200616: 11x 86
Msmdredir.dll9.0.2206.03,990,30417 De noviembre de 200616: 11x 86
Mssqlsystemresource.ldfNo aplicable524.28816 De noviembre de 200613: 58No aplicable
Mssqlsystemresource.mdfNo aplicable40,108,03216 De noviembre de 200613: 58No aplicable
Replprov.dll2005.90.2206.0547,61617 De noviembre de 200616: 11x 86
Replrec.dll2005.90.2206.0782,11217 De noviembre de 200616: 11x 86
Sqlaccess.dll2005.90.2206.0347,93617 De noviembre de 200616: 11x 86
Sqlagent90.exe2005.90.2206.0318,75217 De noviembre de 200616: 11x 86
Sqlservr.exe2005.90.2206.028,964,69617 De noviembre de 200616: 11x 86
Sysdbupg.SQLNo aplicable192,34621 De agosto 200614: 01No aplicable
Xmlsub.dll2005.90.2206.0192,80017 De noviembre de 200611: 10x 86
Xpstar90.dll2005.90.2206.0292,64017 De noviembre de 200611: 10x 86
Xpstar90.rll2005.90.2206.0152,86417 De noviembre de 200616: 11x 86
SQL Server 2005 x versión de 64 bits
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Logread.exe2005.90.2206.0522,52817 De noviembre de 200602: 02x 64
Microsoft.AnalysisServices.AdomdClient.dll9.0.2206.0543,52017 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.AdomdClient.dll9.0.2206.0543,52017 De noviembre de 200602: 02x 86
Microsoft.AnalysisServices.deploymentengine.dll9.0.2206.0138,01617 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.dll9.0.2206.01,215,26417 De noviembre de 200616: 11x 86
Microsoft.SqlServer.mgdsqldumper.dll2005.90.2206.075,55217 De noviembre de 200616: 11x 86
Microsoft.SqlServer.mgdsqldumper.dll2005.90.2206.091,42417 De noviembre de 200602: 02x 64
Microsoft.SqlServer.SqlEnum.dll9.0.2206.0875,29617 De noviembre de 200602: 02x 86
Msasxpress.dll9.0.2206.022,30417 De noviembre de 200616: 11x 86
Msasxpress.dll9.0.2206.027,42417 De noviembre de 200602: 02x 64
Msgprox.dll2005.90.2206.0259,36017 De noviembre de 200602: 02x 64
Msmdlocal.dll9.0.2206.015,614,75217 De noviembre de 200616: 11x 86
Msmdredir.dll9.0.2206.03,990,30417 De noviembre de 200616: 11x 86
Mssqlsystemresource.ldfNo aplicable524.28816 De noviembre de 200613: 58No aplicable
Mssqlsystemresource.mdfNo aplicable40,108,03216 De noviembre de 200613: 58No aplicable
Replprov.dll2005.90.2206.0745,24817 De noviembre de 200602: 02x 64
Replrec.dll2005.90.2206.01,008,41617 De noviembre de 200602: 02x 64
Sqlaccess.dll2005.90.2206.0355,10417 De noviembre de 200602: 02x 86
Sqlagent90.exe2005.90.2206.0389,92017 De noviembre de 200602: 02x 64
Sqlservr.exe2005.90.2206.039,371,04017 De noviembre de 200602: 02x 64
Sysdbupg.SQLNo aplicable192,34621 De agosto 200614: 01No aplicable
Xmlsub.dll2005.90.2206.0317,21617 De noviembre de 200602: 02x 64
Xpstar90.dll2005.90.2206.0540,96017 De noviembre de 200602: 02x 64
Xpstar90.rll2005.90.2206.0153,37617 De noviembre de 200602: 02x 64
Versión de arquitectura Itanium de SQL Server 2005
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Logread.exe2005.90.2206.01,095,45616 De noviembre de 200620: 14IA-64
Microsoft.AnalysisServices.AdomdClient.dll9.0.2206.0543,52016 De noviembre de 200620: 14x 86
Microsoft.AnalysisServices.AdomdClient.dll9.0.2206.0543,52017 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.deploymentengine.dll9.0.2206.0138,01617 De noviembre de 200616: 11x 86
Microsoft.AnalysisServices.dll9.0.2206.01,215,26417 De noviembre de 200616: 11x 86
Microsoft.SqlServer.mgdsqldumper.dll2005.90.2206.0163,10416 De noviembre de 200620: 14IA-64
Microsoft.SqlServer.mgdsqldumper.dll2005.90.2206.075,55217 De noviembre de 200616: 11x 86
Microsoft.SqlServer.SqlEnum.dll9.0.2206.0875,29616 De noviembre de 200620: 14x 86
Msasxpress.dll9.0.2206.055,07216 De noviembre de 200620: 14IA-64
Msasxpress.dll9.0.2206.022,30417 De noviembre de 200616: 11x 86
Msgprox.dll2005.90.2206.0542,49616 De noviembre de 200620: 14IA-64
Msmdlocal.dll9.0.2206.048,610,08016 De noviembre de 200620: 14IA-64
Msmdredir.dll9.0.2206.06,244,12816 De noviembre de 200620: 14IA-64
Mssqlsystemresource.ldfNo aplicable524.28816 De noviembre de 200613: 58No aplicable
Mssqlsystemresource.mdfNo aplicable40,108,03216 De noviembre de 200613: 58No aplicable
Replprov.dll2005.90.2206.01,617,18416 De noviembre de 200620: 14IA-64
Replrec.dll2005.90.2206.02,141,47216 De noviembre de 200620: 14IA-64
Sqlaccess.dll2005.90.2206.0349,47216 De noviembre de 200620: 14x 86
Sqlagent90.exe2005.90.2206.01,141,02416 De noviembre de 200620: 14IA-64
Sqlservr.exe2005.90.2206.072,259,87216 De noviembre de 200620: 14IA-64
Sysdbupg.SQLNo aplicable192,34621 De agosto 200614: 01No aplicable
Xmlsub.dll2005.90.2206.0590,62416 De noviembre de 200620: 14IA-64
Xpstar90.dll2005.90.2206.0951,07216 De noviembre de 200620: 14IA-64
Xpstar90.rll2005.90.2206.0152,35216 De noviembre de 200620: 14IA-64

Solución

Para evitar este problema, intente evitar la recompilación de consulta. Para determinar el motivo de la recompilación, utilice el método que se describe en artículo 308737. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
308737Cómo identificar la causa de recompilación en un evento SP: Recompile

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:".

Más información

Pasos para reproducir el problema

  1. Abra SQL Server Management Studio.
  2. Conectarse a una instancia de SQL Server 2005.
  3. Create a new query, and then run the following statements.
    use tempdb
    go
    
    create table mytab1 (col1 nvarchar(50), col2 nvarchar(100), col3 int)
    go
    
    create table mytab2 (a int)
    go
    
    insert into mytab1 values ('col1 value', 'col2 value', 1)
    go
    
    insert into mytab2 values (1)
    go
    
    set quoted_identifier off;
    go
    
    sp_create_plan_guide 
    N'myplanguide',
    N'select * from mytab1 join mytab2 on col3 = a where col1 = @p1', 
    N'SQL',
    NULL,
    N'@p1 nvarchar(30)',
    N'OPTION (FAST 40, OPTIMIZE FOR (@p1 = N''col2''))'
    go
    
    select * from sys.plan_guides
    go
    
    sp_executesql N'select * from mytab1 join mytab2 on col3 = a where col1 = @p1', N'@p1 nvarchar(30)', N'col2'
    go
    
    drop table mytab1
    go
    
    create table mytab1 (col1 nvarchar(50), col2 nvarchar(100), col3 int)
    go
    
    sp_executesql N'select * from mytab1 join mytab2 on col3 = a where col1 = @p1', N'@p1 nvarchar(30)', N'col2'
    go
    
    sp_control_plan_guide N'drop all'
    go
    

Referencias

Para obtener más información acerca de la sugerencia OPTIMIZE FOR, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/ms181714.aspx
Para obtener más información sobre el esquema de nomenclatura para actualizaciones de Microsoft SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499Nuevo esquema de nomenclatura para los paquetes de actualización del software de Microsoft SQL Server
Para obtener más información acerca de la terminología relativa de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 928539 - Última revisión: martes, 20 de noviembre de 2007 - Versión: 1.4
La información de este artículo se refiere a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
Palabras clave: 
kbmt kbautohotfix kbexpertiseadvanced kbtshoot kbfix kbsql2005engine kbhotfixserver kbqfe kbpubtypekc KB928539 KbMtes
Traducción automática
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): 928539

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com