KB2535705: se produce una infracción de acceso al restaurar una base de datos y ejecutar el sp_replcounters procedimiento almacenado al mismo tiempo en un servidor que ejecuta SQL Server 2008 o SQL Server 2008 R2

Se aplica a: SQL Server 2008SQL Server 2008 R2

Microsoft distribuye Microsoft SQL Server 2008 Microsoft SQL Server 2008 R2 como un archivo que se puede descargar. Debido a que las correcciones son acumulativas, cada versión nueva contiene todas las revisiones y todas las revisiones de seguridad que se incluían en la versión anterior de SQL Server 2008 SQL Server 2008 R2.

Síntomas


Imagine la siguiente situación:
  • Tiene un servidor que ejecuta la replicación en un entorno Microsoft SQL Server 2008 o en un entorno Microsoft SQL Server 2008 R2.
  • Tiene un segundo servidor que ejecuta Microsoft SQL Server 2008 o Microsoft SQL Server 2008 R2, y la replicación está deshabilitada o no está instalada.
  • Restaure una base de datos replicada del primer servidor al segundo servidor.
  • Durante el proceso de restauración de la base de datos, un usuario o una aplicación ejecuta el procedimiento almacenado sp_replcounters en el segundo servidor.
En este escenario, se puede producir una violación de acceso en el segundo servidor. Además, se crea un archivo de volcado de pila en la carpeta de registro de SQL Server. Cuando se produce este problema, es posible que tenga que reiniciar el segundo servidor.

Causa


Este problema se produce porque el procedimiento almacenado sp_replcounters se ejecuta en un servidor en el que la replicación está deshabilitada o no instalada. Cuando sp_replcounters intenta obtener acceso a la caché de artículos, la operación de restauración de la base de datos ya ha llamado a clear_db_repl_cache para quitar la base de datos de artículos antes de que la base de datos se agregue de nuevo en la caché de artículos.

Resolución


Información sobre la actualización acumulativa

SQL Server 2008 R2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 9. Para obtener más información sobre cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2567713 Paquete de actualización acumulativa 9 para SQL Server 2008 R2
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente que contenga este Hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
981356 Las compilaciones de SQL Server 2008 R2 que se lanzaron después de publicar SQL Server 2008 R2

Service Pack 1 de SQL Server 2008 R2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 2 para SQL Server 2008 R2 Service Pack 1. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2567714 Paquete de actualización acumulativa 2 para SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente que contenga este Hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2567616 Las compilaciones de SQL Server 2008 R2 que se publicaron después de que se publicó SQL Server 2008 R2 Service Pack 1

SQL Server 2008

La corrección para este problema se publicó por primera vez en la actualización acumulativa 4. Para obtener más información sobre cómo obtener este paquete de actualización acumulativa para SQL Server 2008, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2527180 Paquete de actualización acumulativa 4 para SQL Server 2008 Service Pack 2
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente que contenga este Hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
956909 Las compilaciones de SQL Server 2008 que se publicaron después de que se publicó SQL Server 2008

Estado


Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".

Más información


Para obtener más información acerca de qué archivos se han cambiado y para obtener información sobre los requisitos previos para aplicar el paquete de actualización acumulativa que contiene el hotfix que se describe en este artículo de Microsoft Knowledge base, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2527180 Paquete de actualización acumulativa 4 para SQL Server 2008 Service Pack 2

Referencias


Para obtener más información acerca de las estadísticas de replicación, visite el siguiente sitio web de Microsoft Developer Network (MSDN):Para obtener más información sobre la lista de compilaciones disponibles después de la publicación de SQL Server 2008, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
956909 Las compilaciones de SQL Server 2008 que se publicaron después de que se publicó SQL Server 2008
Para obtener más información sobre el modelo de mantenimiento incremental para SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897 Un modelo de servicio incremental disponible en el equipo de SQL Server para ofrecer revisiones para problemas detectados
Para obtener más información sobre el esquema de nomenclatura de las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499 Nuevo esquema de nomenclatura para los paquetes de actualización de software de Microsoft SQL Server
Para obtener más información acerca de la terminología de actualizaciones de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft