Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

REVISIÓN: Error cuando se genera una alerta de condición de rendimiento de SQL Server en SQL Server 2008 R2

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): 2587511
Microsoft distribuye las correcciones de Service Pack 1 (SP1) de Microsoft SQL Server 2008 R2 como un archivo descargable. Debido a que las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y todas las actualizaciones de seguridad que se incluyeron con la versión anterior de actualización de Service Pack 1 (SP1) de SQL Server 2008 R2.
Síntomas
Cuando se genera una alerta de condición de rendimiento de SQL Server en Microsoft SQL Server 2008 R2, puede recibir el mensaje de error siguiente:
Msg 512, nivel 16, estado 1, procedimiento sp_sqlagent_get_perf_counters, línea 40
Subconsulta devuelve más de 1 valor. No se permite cuando la subconsulta sigue =,! =, <,> </,> <= ,="">, > = o cuando se utiliza la subconsulta como una expresión.</=>
Además, el mensaje de error se registra en el registro de errores de agente de SQL Server en esta situación.

Nota Esto también ocurre en Microsoft SQL Server 2008.
Causa
Este problema se produce porque la subconsulta de la msdb.dbo.sp_sqlagent_get_perf_counters procedimiento almacenado del sistema calcula el valor de un contador de forma incorrecta.

La subconsulta carece de una relación de combinación interna para la [objeto] columna en la condición de la subconsulta. Por lo tanto, incorrectamente se devuelven varias filas y se produce el problema que se menciona en la sección "Síntomas".

Nota El msdb.dbo.sp_sqlagent_get_perf_counters sistema de procedimiento almacenado cuando se genera una alerta de condición de rendimiento de SQL Server.
Solución

Información de actualización acumulativa

Paquete de actualización acumulativa 3 para SQL Server 2008 R2 SP1

La solución a este problema se publicó en primer lugar en el paquete de actualización acumulativa 3. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2 SP1, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2591748 Paquete de actualización acumulativa 3 para SQL Server 2008 R2 SP1
Nota Como las generaciones son acumulativas, cada nueva versión de actualización contiene todas las revisiones y publicación de la actualización de todas las actualizaciones de seguridad que se incluyeron con la anterior SQL Server R2 SP1. Le recomendamos que considere la posibilidad de aplicar la versión más reciente de actualización que contenga este hotfix. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2567616 SQL Server 2008 R2 se basa que se publicaron después del lanzamiento de SQL Server 2008 R2 SP1


Solución
Para evitar este problema, actualice la subconsulta de la msdb.dbo.sp_sqlagent_get_perf_counters procedimiento almacenado del sistema. Para ello, agregue la condición siguiente a la DONDE cláusula de las cuatro subconsultas que se utilizan en la [valor] cálculo de columna:
(spi1.[object_name] = spi2.[object_name])
Después de agregar la condición, las subconsultas similar al siguiente:
SELECT CASE spi2.cntr_value WHEN 0 THEN 1 ELSE spi2.cntr_value ENDFROM sys.dm_os_performance_counters spi2WHERE (spi1.[object_name] = spi2.[object_name])AND (spi1.counter_name + ' ' = SUBSTRING(spi2.counter_name, 1, PATINDEX('% Base%', spi2.counter_name)))AND (spi1.instance_name = spi2.instance_name)AND (spi2.cntr_type = @perfTypeLargeRawBase

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

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 2587511 - Última revisión: 10/17/2011 10:57:00 - Revisión: 1.0

Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Enterprise Evaluation, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise

  • kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2587511 KbMtes
Comentarios
="text/JavaScript" async=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" mp;did=1&t=">