Configuração de memória e dimensionamento considerações no SQL Server 2012

Traduções deste artigo Traduções deste artigo
ID do artigo: 2663912 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sumário

Microsoft SQL Server realiza o gerenciamento de acordo com os requisitos de memória atual dos componentes internos do SQL Server e carga de trabalho no sistema de memória automática e dinâmica. SQL Server também oferece opções de configuração relacionadas à memória para ajudar a ajustar para padrões de comportamento do aplicativo específico e requisitos avançados específicos. As diferentes opções de configuração incluem o seguinte:
  • Opções de sp_configure (memória máxima do servidor (MB), memória mínima do servidor (MB)e habilitadas para awe)
  • parâmetro de inicialização -g (memory_to_reserve)
  • páginas bloqueadas

Microsoft SQL Server 2012 introduz alterações no Gerenciador de memória que afetam como os administradores configurar essas opções de memória. Revise as alterações descritas aqui antes de atualizar para o SQL Server 2012 ou antes de configurar uma nova instalação do SQL Server 2012.

Observação: Este artigo também se aplica ao Microsoft SQL Server 2014.

Mais Informações

SQL Server 2012 também introduz alterações no caminho tipos específicos de alocações de memória são contabilizados e as opções de configuração de memória que controlam a quantidade máxima de memória que pode ser usada por esses tipos de alocações. As alterações no SQL Server 2012 são específicas para solicitações de alocação de memória do SQL CLR e das alocações de várias páginas. SQL Server 2012 possui um novo alocador de página que gerencia alocações de página única ou várias páginas (menor que 8 KB e maior que as solicitações de alocação de 8 KB). Portanto, não há nenhuma categorização separada que é chamada de "Alocações de várias páginas" no SQL Server 2012.

Alterações em "memória máxima do servidor (MB)" e "memória mínima do servidor (MB)"

Em versões anteriores do SQL Server (SQL Server 2005, SQL Server 2008 e SQL Server 2008 R2), as seguintes opções de configuração determinado os limites de memória física que o pool de buffer consumido. Observe que estamos falando de memória física nesse caso, a memória física confirmada pelo processo do mecanismo de banco de dados do SQL Server:
  • memória máxima do servidor (MB)
  • memória mínima do servidor (MB)
Thisconfiguration opção normalmente incluído somente as alocações de memória foram menor ou igual a 8 KB no processo do SQL Server. Essas alocações werealso conhecido como "single_page_allocations" porque o Gerenciador de memória do SQL Server usado um tamanho de página de 8 KB. Essa configuração não incluiu as seguintes solicitações de alocação de memória:
  • Alocações de várias páginas do SQL Server: estas são alocações que solicitam mais de 8 KB.
  • Alocações de CLR: essas alocações incluem o SQL CLR heaps e suas alocações globais que são criadas durante a inicialização do CLR.
  • Alocações de memória para as pilhas de thread no processo do SQL Server.
  • Solicitações de alocação de memória feitas diretamente no Windows: eles incluem o uso de heap do Windows e diretas alocações virtuais feitas por módulos que estão carregados no processo do SQL Server. Exemplos de tais solicitações de alocação de memória incluem alocações de procedimento armazenado estendido DLLs, objetos que são criados por meio de procedimentos de automação (sp_OA chamadas) e alocações de provedores de servidor vinculado.

Iniciando com o SQL Server 2012, alocações de várias páginas e alocações de CLR também estão incluídas nos limites de memória são controlados pela memória máxima do servidor (MB) e a memória mínima do servidor (MB). Essa alteração fornece uma capacidade de dimensionamento mais precisa para todos os requisitos de memória que passam pelo Gerenciador de memória do SQL Server. Leia com atenção os valores atuais de memória máxima do servidor (MB) e a memória mínima do servidor (MB) após a atualização para o SQL Server 2012. Você deve examinar esses valores porque o SQL Server 2012 agora inclui e é responsável por mais de alocações de memória em comparação com versões anteriores. Essas alterações se aplicam a versões de 32 bits e 64 bits do SQL Server 2012.

A tabela a seguir indica se um tipo específico de alocação de memória é controlado pelas opções de configuração de memória máxima do servidor (MB) e a memória mínima do servidor (MB).
Recolher esta tabelaExpandir esta tabela
Tipo de alocação de memóriaSQL Server 2005, SQL Server 2008, SQL Server 2008 R2SQL Server 2012
Alocações de página únicaSimSim, consolidados em alocações de página "qualquer tamanho"
Alocações de várias páginasNãoSim, consolidados em alocações de página "qualquer tamanho"
Alocações de CLRNãoSim
Memória de pilhas de threadNãoNão
Alocações diretas do WindowsNãoNão

Alterações em "memory_to_reserve"


Em versões anteriores do SQL Server de 32 bits (SQL Server 2005, SQL Server 2008 e SQL Server 2008 R2), o Gerenciador de memória do SQL Server Reserve uma parte do espaço de endereço virtual de processo para uso com as solicitações de alocação a seguir:
  • Alocações de várias páginas do SQL Server: estas são alocações que solicitam mais de 8 KB.
  • Alocações de CLR: essas alocações incluem o SQL CLR heaps e suas alocações globais que são criadas durante a inicialização do CLR.
  • Alocações de memória para as pilhas de thread no processo do SQL Server.
  • Solicitações de alocação de memória feitas diretamente no Windows: essas solicitações de alocação incluem o uso de heap do Windows e diretas alocações virtuais feitas por módulos que estão carregados no processo do SQL Server. Exemplos de tais solicitações de alocação de memória incluem alocações de procedimento armazenado estendido DLLs, objetos que são criados por meio de procedimentos de automação (sp_OA chamadas) e alocações de provedores de servidor vinculado.

O espaço de endereço virtual reservado para essas alocações é determinado pela opção de configuração memory_to_reserve . O valor padrão que usa o SQL Server é de 256 MB. Para substituir o valor padrão, use o parâmetro de inicialização do SQL Server -g . Nesta parte do espaço de endereço virtual é também conhecido como "Memória para deixar" ou "Região do Pool de buffers".

Como o SQL Server 2012 tem o novo alocador de página "qualquer tamanho" que manipula as alocações maiores do que 8 KB, o valor de memory_to_reserve não inclui as alocações de várias páginas. Exceto para essa alteração, tudo permanece o mesmo com essa opção de configuração.

A tabela a seguir indica se um tipo específico de alocação de memória se enquadra na região de memory_to_reservede espaço de endereço virtual para o processo do SQL Server.
Recolher esta tabelaExpandir esta tabela
Tipo de alocação de memóriaSQL Server 2005, SQL Server 2008, SQL Server 2008 R2SQL Server 2012
Alocações de página únicaNãoNão, consolidados em alocações de página "qualquer tamanho"
Alocações de várias páginasSimNão, consolidados em alocações de página "qualquer tamanho"
Alocações de CLRSimSim
Memória de pilhas de threadSimSim
Alocações diretas do WindowsSimSim

Alterações para outras opções de configuração relacionadas à memória

Se você tiver configurado o SQL Server 2005, SQL Server 2008 ou SQL Server 2008 R2 para usar a opção "habilitadas para awe", consulte o seguinte artigo para entender as alterações importantes para essa opção de configuração:
O recurso do SQL Server "habilitadas para awe" foi substituído

Se você tiver configurado o SQL Server 2005, SQL Server 2008 ou SQL Server 2008 R2 para usar o recurso "páginas bloqueadas", consulte o seguinte artigo para entender as alterações importantes para essa opção de configuração:
Como ativar o recurso "páginas bloqueadas" no SQL Server 2012

Uso máximo de memória para várias edições do SQL Server

Diferentes edições do SQL Server têm limites máximos de vários resourcesthey pode usar. Há limites sobre o uso máximo de memória de diferentes edições do SQL Server. Por exemplo, uma instância do SQL Server 2008 R2 pode usar apenas um maximummemory de 64 GB. Para obter detalhes completos, consulte a seguinte página da Web do MSDN:
Recursos compatíveis com as edições do SQL Server 2012
Iniciando com o SQL Server 2012, esses limites de memória são aplicados somente para o cache de banco de dados (pool de buffer). O restante dos caches no Gerenciador de memória do SQL Server pode usar muito mais memória do que o especificado por esses limites de edição. Por exemplo, um SQL Server 2012 Express edition pode usar somente um tamanho máximo de 1,4 GB para o cache de banco de dados. Outros caches (por exemplo, o cache de procedimento, o cache de metadados e assim por diante) podem consumir memória até o tamanho especificado pela configuração "memória máxima do servidor".

Referências

Alterações de Gerenciador de memória do SQL Server no Denali

Novos recursos do SQLOS no SQL Server 2012

Propriedades

ID do artigo: 2663912 - Última revisão: quinta-feira, 24 de julho de 2014 - Revisão: 3.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2012 Enterprise
Palavras-chave: 
kbtshoot kbmt KB2663912 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.
Clique aqui para ver a versão em Inglês deste artigo: 2663912

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