Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Microsoft distribuisce le correzioni di Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) in un unico file scaricabile. Dato che le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione di aggiornamento precedente di SQL Server 2008 R2 Service Pack 1 (SP1).

Sintomi

Quando viene generato un avviso di condizione delle prestazioni di SQL Server in Microsoft SQL Server 2008 R2, è possibile che venga visualizzato il messaggio di errore seguente:

Msg 512, livello 16, stato 1, procedura sp_sqlagent_get_perf_counters, linea 40Subquery restituito più di 1 valore. Questa operazione non è consentita quando la sottoquery segue =,! =, <, <=, >, >= o quando la sottoquery viene usata come espressione.

Inoltre, il messaggio di errore viene registrato nel log degli errori di SQL Server Agent in questa situazione.Nota Questo problema si verifica anche in Microsoft SQL Server 2008.

Causa

Questo problema si verifica perché la sottoquery della stored procedure di sistema msdb.dbo.sp_sqlagent_get_perf_counters calcola il valore di un contatore in modo non corretto. La sottoquery non dispone di una relazione di join interna per la colonna [object_name] nella condizione della sottoquery. Di conseguenza, più righe vengono restituite in modo non corretto e si verifica il problema menzionato nella sezione "Sintomi".Nota La stored procedure di sistema msdb.dbo.sp_sqlagent_get_perf_counters viene eseguita quando viene generato un avviso di condizione delle prestazioni di SQL Server.

Risoluzione

Informazioni sull'aggiornamento cumulativo

Pacchetto di aggiornamento cumulativo 3 per SQL Server 2008 R2 SP1

La correzione di questo problema è stata rilasciata per la prima volta nel pacchetto di aggiornamento cumulativo 3. Per altre informazioni su come ottenere questo pacchetto di aggiornamento cumulativo per SQL Server 2008 R2 SP1, fare clic sul numero dell'articolo seguente per visualizzare l'articolo della Microsoft Knowledge Base:

2591748 Pacchetto di aggiornamento cumulativo 3 per SQL Server 2008 R2 SP1Nota Poiché le compilazioni sono cumulative, ogni nuova versione di aggiornamento contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione di aggiornamento precedente di SQL Server 2008 R2 SP1. Ti consigliamo di considerare l'applicazione della versione di aggiornamento più recente che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:

2567616 Build di SQL Server 2008 R2 rilasciate dopo il rilascio di SQL Server 2008 R2 SP1

Soluzione alternativa

Per risolvere il problema, aggiornare la sottoquery della stored procedure di sistema msdb.dbo.sp_sqlagent_get_perf_counters . A questo scopo, Aggiungi la condizione seguente alla clausola where delle quattro sottoquery usate nel calcolo della colonna [value] :

(spi1.[object_name] = spi2.[object_name])

Dopo aver aggiunto la condizione, le sottoquery sono simili alle seguenti:

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

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×