SQL Server 2012 si verificano errori di esaurimento della memoria

Traduzione articoli Traduzione articoli
Identificativo articolo: 2769594 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Microsoft SQL Server 2012 potrebbero verificarsi alcuni errori di memoria esaurita a causa di un problema di memoria interna. In questo caso, la memoria persa č utilizzata dalla classe clerk di memoria MEMORYCLERK_SQLLOGPOOL che viene utilizzata internamente per le attivitā di registro delle transazioni. Ad esempio, l'impiegato addetto alla memoria_SQLLOGPOOL di MEMORYCLERKviene utilizzata internamente per le attivitā di registro delle transazioni seguenti:
  • Attivitā di acquisizione delle modifiche di AlwaysOn nelle repliche primarie
  • AlwaysOn Ripeti attivitā di gestione nelle repliche disponibilitā secondaria

Questo problema puō risultare pių grave di un elevato numero di transazioni che vengono sincronizzate su un'istanza di SQL Server che ospita la maggior parte dei database di disponibilitā. Quando si verifica questo problema, nel log degli errori SQL viene registrato un messaggio di errore analogo al seguente:
Impossibile allocare pagine: FAIL_PAGE_ALLOCATION 8
Errore: 701, gravitā: 17, stato: 107.
Non vi č memoria di sistema insufficiente nel pool di risorse interni per eseguire la query.
Errore: 701, gravitā: 17, stato: 123.
Non vi č memoria di sistema insufficiente nel pool di risorse 'Nomepool' per eseguire la query.
Errore: 701, gravitā: 17, stato: 107. (Params :). L'errore viene stampata in modalitā chiare causa di errore durante la formattazione. Analisi, vengono ignorate ETW, notifiche e cosė via.
Errore: 17312, livello di gravitā: 16, stato: 1.
Interruzione di un'attivitā di sistema o di sfondo HADR attivitā a causa di errori in Avvio attivitā (stato di installazione 1) in SQL Server.
AppDomain 3181 (<appdomain>) č contrassegnata per lo scaricamento a causa della pressione della memoria.
Scaricamento del dominio applicazione 3181 (<appdomain>).
Errore: 9602, gravitā: 16, stato: 1.
Impossibile avviare un'attivitā di sistema con codice di errore 28709, stato 19.
Errore: 17300, gravitā: 16, stato: 1.
SQL Server non č riuscito a eseguire una nuova attivitā di sistema, sia perché non vi č sufficiente memoria o il numero di sessioni configurate supera il massimo consentito nel server. Verificare che il server dispone di memoria sufficiente. Utilizzare sp_configure con l'opzione "user connections" per verificare il numero massimo di connessioni utente consentite. Utilizzare exec_sessions per controllare il numero di sessioni, inclusi i processi utente.
Errore: 17312, livello di gravitā: 16, stato: 1.
Interruzione di un'attivitā di sistema o di sfondo HADR attivitā a causa di errori in Avvio attivitā (stato di installazione 1) in SQL Server.
Errore: 18054, livello di gravitā: 16, stato: 1.</appdomain></appdomain>
Quando l'istanza di SQL Server ospita un database in cui č coinvolto in un gruppo di disponibilitā AlwaysOn di SQL Server, la sincronizzazione dei dati tra repliche potrebbe non riuscire. Per aggirare il problema, č possibile arrestare e riavviare SQL Server.

Quando si verifica le condizioni di memoria insufficiente, il gruppo di disponibilitā puō essere trasferito su replica disponibilitā secondaria e replica primaria ex puō ancora raggiungere errori fino a quando il servizio viene arrestato e riavviato. Il gruppo di disponibilitā potrebbe visualizzare la risoluzione o stato sconosciuto e tutti i database del gruppo disponibilitā potrebbero essere inaccessibili, fino a quando non viene riavviato il servizio SQL per liberare la memoria del pool di log.

Č possibile eseguire l'istruzione DBCC MEMORYSTATUS quando il fallimento ha inizio da notare nell'output del numero di gigabyte di memoria utilizzata dall'impiegato addetto alla memoria MEMORYCLERK_SQLLOGPOOL . Di seguito č riportato un esempio dell'output:
KB MEMORYCLERK_SQLLOGPOOL (nodo 0)
---------------------------------------- -----------
Macchina virtuale riservato 0
VM commesso 0
Pagine bloccate allocata 0
SM riservato 0
SM commesso 0
Pagine allocate 823544
Č inoltre possibile visualizzare il numero di pagine di memoria del problema mediante l'esecuzione di query DMV seguenti:
SELECT * FROM sys.dm_os_memory_clerks WHERE type='MEMORYCLERK_SQLLOGPOOL'
SELECT type, name, pages_in_bytes/ 1024 AS PMO_KB FROM sys.dm_os_memory_objects WHERE type like 'MEMOBJ_LOGPOOL%'
Un altro possibile problema č quella di SQL Server query potrebbero attendere waittype RESOURCE_SEMAPHORE quando la memoria del pool di buffer non č possibile ottenere immediatamente a causa del numero elevato di consumatori di Pool di Log.

Questo hotfix risolve i seguenti problemi:
  • Una perdita di memoria č stato corretto nel meccanismo di read-ahead di interno utilizzato per individuare i pool di log delle transazioni vengono utilizzati da AlwaysOn e altre attivitā intensiva del log delle transazioni in SQL Server 2012.
  • Quando vi č poca memoria disponibile, SQL Server rilascia la memoria del pool di log interni aggressiva per recuperare gli errori di esaurimento della memoria pių normalmente.

Risoluzione

Informazioni sull'aggiornamento cumulativo

Aggiornamento cumulativo 2 per SQL Server 2012 SP1

La correzione di questo problema č stata rilasciata prima nell'aggiornamento cumulativo 2. Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo per SQL Server 2012 SP1, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
2790947 Pacchetto di aggiornamento cumulativo 2 per SQL Server 2012 Service Pack 1
Nota. Poiché le versioni sono cumulative, ogni nuova versione contiene tutte le correzioni rapide e rilascio delle correzioni per tutte le correzioni fornite con il Service Pack 1 di precedenti SQL Server 2012. Si consiglia di considerare l'ipotesi di applicare la versione pių recente contenente tale hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
2772858 Il 2012 di SQL Server versioni rilasciate dopo il rilascio di SQL Server 2012 Service Pack 1

Aggiornamento cumulativo 5 per SQL Server 2012

La correzione di questo problema č stata rilasciata prima nell'aggiornamento cumulativo 5. Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo per SQL Server 2012, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
2777772 Pacchetto di aggiornamento cumulativo 5 per SQL Server 2012
Nota. Poiché le versioni sono cumulative, ogni nuova versione contiene tutte le correzioni rapide e rilascio delle correzioni per tutte le correzioni fornite con il precedente 2012 di SQL Server. Si consiglia di considerare l'ipotesi di applicare la versione pių recente contenente tale hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
2692828 Il 2012 di SQL Server versioni rilasciate dopo il rilascio di SQL Server 2012

Informazioni sull'hotfix

Un hotfix supportato č disponibile da Microsoft. Tuttavia, questo hotfix č destinato esclusivamente alla risoluzione del problema descritto in questo articolo. Applicare questo hotfix solo ai sistemi in cui si verificano questo problema specifico.

Se l'hotfix č disponibile per il download, č disponibile la sezione "Hotfix disponibile per il download" all'inizio di questo articolo della Knowledge Base riportato di seguito. Se non viene visualizzato in questa sezione, inviare una richiesta al servizio clienti Microsoft e supporto tecnico per ottenere l'hotfix.

Nota. Se si verificano ulteriori problemi o se č richiesta la risoluzione dei problemi, potrebbe essere necessario creare una richiesta di assistenza separata. I costi di supporto usuali verranno applicati per eventuali ulteriori domande e problemi che non dovessero rientrare nello specifico hotfix in questione. Per un elenco completo dei numeri di telefono del servizio clienti Microsoft e supporto tecnico o per creare una richiesta di assistenza separata, visitare il seguente sito Web Microsoft:
http://support.microsoft.com/contactus/?ws=support
Nota. Il modulo "Hotfix disponibile per il download" visualizza le lingue per cui č disponibile l'hotfix. Se non č disponibile la lingua, č perché non č disponibile alcun hotfix per tale lingua.

Richiesta di riavvio

Non č necessario riavviare il computer dopo avere applicato questo hotfix.

Prerequisiti

Per applicare questo hotfix, č necessario disporre di SQL Server 2012 installato.

Informazioni sui file

La versione globale di questo hotfix presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e ore dei file sono elencate nel tempo universale coordinato (UTC). Quando si visualizzano le informazioni sul file, viene convertita in ora locale. Per calcolare la differenza tra ora UTC e ora locale, utilizzare il Fuso orario Nella scheda il Data e ora elemento nel Pannello di controllo.
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensione del fileDataOraPiattaforma
Sqlmin.dll2011.110.2387.032,460,27219-Ott-201205: 25x64
Sqlservr.exe2011.110.2387.0190,94419-Ott-201205: 01x64
Sqlmin.dll2011.110.2387.026,515,93619-Ott-201205: 22x86
Sqlservr.exe2011.110.2387.0160,22419-Ott-201205: 17x86

Proprietā

Identificativo articolo: 2769594 - Ultima modifica: giovedė 24 gennaio 2013 - Revisione: 3.0
Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
Chiavi: 
kbtshoot kbautohotfix kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2769594 KbMtit
Traduzione automatica articoli
Il presente articolo č stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non č sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pių o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non č la sua. Microsoft non č responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 2769594
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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