A Microsoft distribui correções do Microsoft SQL Server 2012 como um arquivo que pode ser baixado. Como as correções são cumulativas, cada nova versão contém todos os hotfixes e todas as correções de segurança incluídas na versão anterior do SQL Server 2012 Fix.
Sintomas
Considere o cenário a seguir. Você executa uma instância do Microsoft SQL Server 2012 em um computador que usa o acesso não uniforme à memória (NUMA) e o SQL Server usa muitas páginas estrangeiras. Nesse cenário, você pode encontrar um erro de falta de memória. Por exemplo, o seguinte erro 701 pode ser registrado no arquivo de log de erro do SQL Server:
<data><hora><ID SPID> Erro: 701, severidade: 17, estado: 123. <data><hora><ID SPID>Não há memória do sistema suficiente para executar esta consulta.
Geralmente, esse problema ocorre se a opção de memória máxima do servidor for usada para reservar uma grande parte da RAM do uso do SQL Server. Nesse caso, o SQL Server tem mais probabilidade de experimentar a distribuição NUMA de desequilíbrio.
Causa
Esse problema ocorre porque a função que é usada para calcular as páginas de memória disponíveis para um nó de memória não funciona corretamente.
Resolução
Informações sobre a atualização cumulativa
SQL Server 2012
A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 1 para SQL Server 2012. Para obter mais informações sobre como obter esse pacote de atualização cumulativa do SQL Server, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
2679368 Atualização cumulativa 1 para SQL Server 2012Observação Como as compilações são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança incluídas na versão anterior do lançamento do SQL Server. Recomendamos que você considere a aplicação do lançamento de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft:
2692828 As compilações do SQL Server 2012 lançadas após o lançamento do SQL Server 2012
Informações adicionais
Para verificar a quantidade de memória estrangeira, use um dos seguintes métodos:
-
Consultar o sys.dm_os_memory_nodes a DMV (exibição de gerenciamento dinâmico). Para obter mais informações sobre o sys.dm_os_memory_nodes DMV, acesse o seguinte website da MSDN:
-
Execute a seguinte instrução ou verifique a saída do status da memória no log de erros do SQL Server quando ocorre o erro do 701:
DBCC MEMORYSTATUS
-
Verifique o contador memória de nó estrangeiro (KB) no objeto de nó de memória no SQL Server 2012. Para obter mais informações sobre o objeto do nó de memória, acesse o seguinte website da MSDN:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft que estão listados na seção "Aplicável a".
Referências
Para obter mais informações sobre o modelo de manutenção incremental do SQL Server, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
935897 Um modelo de serviço incremental está disponível na equipe do SQL Server para fornecer hotfixes para problemas relatadosPara obter mais informações sobre o esquema de nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
822499 Esquema de nomeação para pacotes de atualização de software do Microsoft SQL ServerPara obter mais informações sobre terminologia de atualização de software, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
824684 Descrição da terminologia padrão utilizada para descrever as atualizações de software da Microsoft