SQL Server 2012 enfrenta erros de falta de memória

Traduções de Artigos Traduções de Artigos
Artigo: 2769594 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Microsoft SQL Server 2012 pode enfrentar alguns erros de falta de memória devido a um vazamento de memória interna. Nessa situação, a perda de memória é consumida pelo administrador de memória de MEMORYCLERK_SQLLOGPOOL que é usado internamente para atividades de log de transação. Por exemplo, o administrador de memória_SQLLOGPOOL de MEMORYCLERKé usado internamente para as seguintes atividades de log de transação:
  • Atividades de captura de alteração AlwaysOn nas réplicas primárias
  • AlwaysOn Refazer atividades do Gerenciador nas réplicas disponibilidade secundário

Esse problema pode ser agravado pelo grande volume de transações que estão sendo sincronizadas em uma instância do SQL Server que hospeda muitos bancos de dados de disponibilidade. Quando esse problema ocorre, uma mensagem de erro semelhante à seguinte é registrada no log de erro do SQL:
Falha ao alocar páginas: FAIL_PAGE_ALLOCATION 8
Erro: 701, gravidade: 17, estado: 107.
Há memória de sistema suficientes no pool de recursos 'internos' para executar essa consulta.
Erro: 701, gravidade: 17, estado: 123.
Há memória de sistema suficientes no pool de recursos 'Nome_conjunto' para executar essa consulta.
Erro: 701, gravidade: 17, estado: 107. (Params :). O erro será impressa no modo sucinto porque houve erro durante a formatação. O rastreamento ETW, notificações etc são ignorados.
Erro: 17312, gravidade: 16, estado: 1.
SQL Server está encerrando uma tarefa em segundo plano ou sistema HADR tarefa devido a erros na inicialização da tarefa (estado de configuração 1).
AppDomain 3181 (<appdomain>) está marcado para ser descarregado devido à pressão de memória.
AppDomain 3181 (<appdomain>) foi descarregado.
Erro: 9602, gravidade: 16, estado: 1.
Falha ao iniciar uma tarefa do sistema com código de erro 28709, estado 19.
Erro: 17300, gravidade: 16, estado: 1.
SQL Server não pôde executar uma nova tarefa de sistema, ou porque não há suficiente memória ou o número de sessões configuradas ultrapassa o máximo permitido no servidor. Verifique se o servidor tem memória adequada. Use sp_configure com opção 'conexões de usuário' para verificar o número máximo de conexões de usuários permitidos. Use DM exec_sessions para verificar o número atual de sessões, incluindo processos do usuário.
Erro: 17312, gravidade: 16, estado: 1.
SQL Server está encerrando uma tarefa em segundo plano ou sistema HADR tarefa devido a erros na inicialização da tarefa (estado de configuração 1).
Erro: 18054, gravidade: 16, estado: 1.</appdomain></appdomain>
Quando a instância do SQL Server hospeda um banco de dados que está envolvido em um grupo de disponibilidade do SQL Server AlwaysOn, a sincronização de dados entre réplicas pode falhar. Para contornar o problema, você pode parar e reiniciar o SQL Server.

Quando as condições de falta de memória ocorre, o grupo de disponibilidade pode apresentar failover à réplica de disponibilidade secundário, e a réplica principal antiga pode continuar alcançando erros até que o serviço for interrompido e reiniciado. O grupo de disponibilidade poderá entrar no Resolvendo ou estado desconhecido e todos os bancos de dados no grupo disponibilidade podem ser inacessíveis, até que o serviço do SQL é reiniciado para liberar a memória de pool de log.

Você pode executar a instrução DBCC MEMORYSTATUS quando a falha começa a observar na saída muitos gigabytes de memória consumidos pelo auxiliar de memória de MEMORYCLERK_SQLLOGPOOL . Este é um exemplo de saída:
KB MEMORYCLERK_SQLLOGPOOL (nó 0)
---------------------------------------- -----------
VM reservado 0
VM comprometida 0
Páginas bloqueadas alocados 0
SM reservado 0
SM confirmadas 0
Páginas alocadas 823544
Você também pode ver o número de páginas de memória do problema executando as seguintes consultas DMV:
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%'
Outro problema possível é que SQL Server consultas poderiam esperar waittype RESOURCE_SEMAPHORE quando a memória de pool de buffer não é possível obter imediatamente devido ao grande número de consumidores de Pool de Log.

Esse hotfix resolve os seguintes problemas:
  • Um vazamento de memória é corrigido no mecanismo de read-ahead interno que é usado para localizar os pools de log de transação são usados por AlwaysOn e outras atividades de uso intensivo de log de transação no SQL Server 2012.
  • Quando há pouca memória disponível, o SQL Server libera a memória de pool log interno agressivamente para se recuperar de falhas de falta de memória mais normalmente.

Resolução

Informações da atualização cumulativa

Atualização cumulativa 2 do SQL Server 2012 SP1

A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 2. Para obter mais informações sobre como obter esse pacote de atualizações cumulativas para o SQL Server 2012 SP1, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2790947 Pacote de atualizações cumulativas 2 para SQL Server 2012 Service Pack 1
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e correções de segurança que foram incluídas com o anterior SQL Server 2012 SP1 corrigir lançamento. Recomendamos que você considere a aplicação a versão mais recente da correção que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2772858 O SQL Server 2012 compilações que foram lançadas após o lançamento do SQL Server 2012 Service Pack 1

Atualização cumulativa 5 para SQL Server 2012

A correção para esse problema foi lançada em 5 de atualização cumulativa. Para obter mais informações sobre como obter esse pacote de atualização cumulativa para SQL Server 2012, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2777772 Pacote de atualizações cumulativas 5 para SQL Server 2012
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e correções de segurança que foram incluídas com o 2012 de SQL Server anteriores corrigir lançamento. Recomendamos que você considere a aplicação a versão mais recente da correção que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2692828 O SQL Server 2012 compilações disponibilizadas após o lançamento do SQL Server 2012

Informações sobre hotfix

Um hotfix compatível está disponível na Microsoft. No entanto, esse hotfix destina-se apenas a corrigir o problema descrito neste artigo. Aplica esse hotfix somente aos sistemas que apresentarem esse problema específico.

Se o hotfix estiver disponível para download, há uma seção "Download de Hotfix disponível" na parte superior deste artigo da Base de Dados de Conhecimento. Se essa seção não for exibida, envie uma solicitação ao suporte e atendimento ao cliente Microsoft para obter o hotfix.

Observação Se ocorrerem problemas adicionais ou se qualquer solução de problemas é necessária, talvez você precise criar uma solicitação de serviço. Os custos normais de suporte serão aplicados a questões de suporte adicionais e problemas que não se qualificam para esse hotfix específico. Para obter uma lista completa dos números de telefone de suporte e atendimento ao cliente da Microsoft ou para criar uma solicitação de serviço, vá para o seguinte site da Microsoft:
http://support.microsoft.com/contactus/?WS=support
Observação O formulário "Download de Hotfix disponível" exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma, é porque um hotfix não está disponível para esse idioma.

Requisito de reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix.

Pré-requisitos

Para aplicar esse hotfix, você deve ter o SQL Server 2012 instalado.

Informações sobre o arquivo

A versão global deste hotfix apresenta os atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas em formato Tempo Universal Coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido em hora local. Para encontrar a diferença entre o UTC e a hora local, use o Fuso horário Guia de Data e hora item no painel de controle.
Reduzir esta tabelaExpandir esta tabela
Nome do arquivoVersão do arquivoTamanho do arquivoDataHoraPlataforma
Sqlmin.dll2011.110.2387.032,460,27219-Out-201205: 25x64
Sqlservr.exe2011.110.2387.0190,94419-Out-201205: 01x64
Sqlmin.dll2011.110.2387.026,515,93619-Out-201205: 22x86
Sqlservr.exe2011.110.2387.0160,22419-Out-201205: 17x86

Propriedades

Artigo: 2769594 - Última revisão: 24 de janeiro de 2013 - Revisão: 3.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
Palavras-chave: 
kbtshoot kbautohotfix kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2769594 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 2769594

Submeter comentários

 

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