Microsoft distribuisce le correzioni di Microsoft SQL Server 2012 come un file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server 2012 FIX.
Sintomi
Consideriamo lo scenario seguente. Si esegue un'istanza di Microsoft SQL Server 2012 in un computer che usa l'accesso alla memoria non uniforme (NUMA) e SQL Server usa molte pagine esterne. In questo scenario potresti riscontrare un errore di memoria insufficiente. Ad esempio, il seguente errore di 701 potrebbe essere registrato nel file di log degli errori di SQL Server:
<data><ora><ID SPID> Errore: 701, gravità: 17, stato: 123. <data><ora><ID SPID>Per eseguire la query non è disponibile memoria di sistema insufficiente.
Questo problema si verifica in genere se l'opzione max server memory viene usata per mettere da parte una gran parte della RAM dall'uso di SQL Server. In questo caso, è più probabile che SQL Server verifichi la distribuzione NUMA non bilanciata.
Causa
Questo problema si verifica perché la funzione usata per calcolare le pagine di memoria disponibili per un nodo di memoria non funziona correttamente.
Risoluzione
Informazioni sull'aggiornamento cumulativo
SQL Server 2012
La correzione di questo problema è stata rilasciata per la prima volta in aggiornamento cumulativo 1 per SQL Server 2012. Per altre informazioni su come ottenere questo pacchetto di aggiornamento cumulativo per SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:
2679368 Aggiornamento cumulativo 1 per SQL Server 2012Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server Fix. Ti consigliamo di considerare l'applicazione della versione di correzione più recente che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:
2692828 Build di SQL Server 2012 rilasciate dopo il rilascio di SQL Server 2012
Ulteriori informazioni
Per controllare l'importo della memoria esterna, usare uno dei metodi seguenti:
-
Eseguire una query sulla sys.dm_os_memory_nodes DMV (Dynamic Management View). Per altre informazioni sulla DMV sys.dm_os_memory_nodes, visitare il sito Web MSDN seguente:
-
Eseguire l'istruzione seguente o controllare l'output dello stato di memoria nel log degli errori di SQL Server quando si verifica l'errore di 701:
DBCC MEMORYSTATUS
-
Controllare il contatore della memoria di nodi esterni (KB) nell'oggetto nodo di memoria in SQL Server 2012. Per altre informazioni sull'oggetto nodo di memoria, visitare il sito Web MSDN seguente:
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".
Riferimenti
Per altre informazioni sul modello di manutenzione incrementale per SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:
935897 Un modello di manutenzione incrementale è disponibile nel team di SQL Server per fornire gli hotfix per i problemi segnalatiPer altre informazioni sullo schema di denominazione per gli aggiornamenti di SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:
822499 Schema di denominazione per i pacchetti di aggiornamento software di Microsoft SQL ServerPer altre informazioni sulla terminologia degli aggiornamenti software, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:
824684 Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft