Entrar com a conta da Microsoft
Entrar ou criar uma conta.
Olá,
Selecionar uma conta diferente.
Você tem várias contas
Escolha a conta com a qual você deseja entrar.

A Microsoft distribui correções do Microsoft SQL Server 2008 como um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server de 2008 a anterior corrigir lançamento.

Sintomas

Você tiver um pacote do Microsoft SQL Server 2008 Integration Services (SSIS 2008). O pacote contém uma tarefa de fluxo de dados. Quando você executa o pacote em um servidor que está em uma condição de pouca memória, ocorre uma violação de acesso e, em seguida, o processo de tempo de execução do SSIS 2008 falha. Além disso, você recebe avisos sobre a pouca memória semelhantes à seguinte no log de aplicativo do SSIS 2008:

Nome do evento: OnInformation

Descrição: Gerenciador de buffer falha uma chamada de alocação de memória de bytes 10484760, mas não conseguiu trocar os buffers para diminuir a pressão de memória. 305 buffers foram consideradas e 295 foram bloqueadas. Qualquer memória insuficiente está disponível para o pipeline porque insuficiente estão instalados, outros processos estavam usando ou excesso de buffers estão bloqueadas.



Nome do evento: OnInformation


Descrição: Gerenciador de buffer alocou 10485608 bytes, mesmo que a pressão de memória foi detectada e tentativas repetidas para trocar buffers falharam.



Observação: Os vários processos em tempo de execução que executar os pacotes SSIS 2008 são DTExec.exe, DTSHost.exe ou DTSDebugHost.exe. O processo que executa o pacote do SSIS 2008 é determinado pelas condições que o pacote está em. O processo de DTExec.exe executa pacotes do pai. O processo de DTSHost.exe executa pacotes filho. O processo de DtsDebugHost.exe executa pacotes que são depurados de Business Intelligence Design Studio.

Causa

O SSIS 2008 é notificado de que o servidor está em uma condição de memória baixa. Uma condição de memória baixa ocorre quando há apenas 128 megabytes (MB) de 256 MB de memória disponíveis. Em seguida, o processo de execução SSIS 2008 começa a troca de buffers de pipeline de fluxo de dados para a pasta temporária que é especificada pela propriedade BufferTempStoragePath .


A situação mencionada na seção "Sintomas", os dados em um buffer são copiados internamente para um buffer de destino por uma transformação. Por exemplo, os dados em um buffer são copiados por uma transformação Merge Join. Essa operação ocorre enquanto o servidor está em uma condição de memória baixa. No entanto, a transformação não reconhece que um segmento fora a transformação permutado, de repente, o buffer de destino. Portanto, a operação de cópia falhará e, em seguida, faz com que a violação de acesso.

Resolução

Esse hotfix bloqueia o buffer de destino explicitamente durante uma operação de cópia. Esse comportamento impede que outros segmentos trocando o buffer de destino quando a operação de cópia estiver em execução.
A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 6 para SQL Server 2008 Service Pack 1. Para obter mais informações sobre esse pacote cumulativo de atualização, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

6 do pacote de atualização do 977443 cumulativo para o SQL Server 2008 Service Pack 1Observação: Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server de 2008 lançamento de correção. Recomendamos que você considere aplicar o lançamento mais recente de correção que contém esse hotfix. Para obter mais informações, clique no número de artigo a seguir para visualizar o artigo na Base de Dados de Conhecimento da Microsoft:

970365 cria o SQL Server 2008 que foram lançadas após o lançamento do SQL Server 2008 Service Pack 1
Os hotfixes do Microsoft SQL Server 2008 são criados para service packs específicos do SQL Server. Você deve aplicar um hotfix do SQL Server 2008 Service Pack 1 para uma instalação do SQL Server 2008 Service Pack 1. Por padrão, todos os hotfixes fornecidos em um service pack do SQL Server estão incluídos no próximo service pack do SQL Server.

Solução alternativa

Para contornar esse problema, resolva a condição de memória baixa. A quantidade de memória que pode gerar esse problema varia para computadores diferentes. Em geral, esse valor está entre 32 MB e 64 MB. Portanto, recomendamos que você configure o servidor para alocar mais de 64 MB de memória disponível para o SSIS 2008.

A quantidade padrão de memória disponível que sinaliza um evento de notificação de recurso de pouca memória flutua. Essa memória disponível varia de 32 MB a 64 MB para cada 4 gigabytes (GB). Esse problema é difícil evitar porque a memória disponível flutua em servidores de produção ocupado. Além disso, a memória pode diminuir por diversos outros motivos. Para obter mais informações sobre notificações de recurso de memória, visite o seguinte site da Microsoft Developer Network (MSDN):

Função que cria objetos de notificação do recurso de memóriaPara reduzir a frequência do problema, use um dos seguintes métodos.

Método 1

Adicione mais memória física ao computador.

Método 2

Execute o pacote do SSIS 2008 em um computador que não está executando uma instância do SQL Server.

Método 3

Quando você executa o pacote do SSIS 2008, defina a opção de memória máxima para a instância do SQL Server 2008 para um valor menor. Esse comportamento aumenta a memória disponível.

Método 4

Feche os aplicativos que consomem muita memória ao executar o pacote do SSIS 2008 que contém tarefas de fluxo de dados.


Método 5

Execute o pacote do SSIS 2008 e as tarefas de fluxo de dados em sequência em vez de em paralelo para diminuir o uso de memória.


Método 6

Use o método descrito na subseção "Como monitorar o consumo de memória para SSIS" da secção "Mais informação" para solucionar a condição de memória baixa. Otimize o uso da memória para o SSIS 2008.

Status

A Microsoft confirma que este é um problema em seus produtos listados na seção "Aplica-se a".

Mais informações

Como monitorar o consumo de memória para SSIS

Monitorar a memória para medir o pico do uso de vários processos de tempo de execução do SQL Server Integration Services calcular o uso máximo de memória


Monitorar o uso de memória de pico de vários processos de tempo de execução do SQL Server Integration Services (SSIS) usando o
Bytes particulares
contador da
Processo
objeto no Monitor de desempenho. O processo de DTExec.exe e o processo de DTSHost.exe são exemplos de processos de tempo de execução do SSIS.


Quando os pacotes do SSIS estão executando, encontrar o valor máximo para o
Bytes particulares
contador. Quando vários pacotes são executados em paralelo, some os valores máximos de todos os processos em execução para obter o valor máximo para o uso da memória.

Monitorar processos externos para encontrar picos e vales


Monitore o pico do uso de memória de processos fora o serviço do SQL Server e o serviço SSIS usando o
Bytes particulares
contador da
Processo
objeto no Monitor de desempenho. Procure os horários de pico de uso que podem diminuir a memória disponível para SSIS. Por exemplo, os horários de pico são quando vários usuários usam o protocolo de área de trabalho remota (RDP) para se conectar ao servidor ou ao executa o software de backup.

Monitorar o uso de memória do SQL Server para localizar picos e vales


Se a mensagem "Using bloqueada páginas de pool de buffer" não é o mais recente arquivo de log de erros, o
Bytes particulares
contador para o processo de Sqlservr.exe pode indicar a quantidade de memória consumida pelos serviços do SQL Server.



Se a mensagem "Using bloqueada páginas de pool de buffer" está incluída no arquivo de log de erro mais recente, use a
Memória total do servidor (KB)
contador da
SQL Server: Gerenciador de memória
objeto de desempenho para medir o uso da memória do pool de buffer do SQL Server. Além disso, use o
Bytes particulares
contador para o processo de Sqlservr.exe encontrar as alocações de memória fora do pool de buffer (MemToLeave). A soma do valor de contador Memória Total de servidor (KB) e o valor de MemToLeave é uma boa estimativa da quantidade total de memória que usa o SQL Server.



Monitor de desempenho e o Gerenciador de tarefas não exibem a memória que é consumida por essas páginas de pool do buffer quando uma das seguintes condições for verdadeira:

  • O
    Direito de usuário Bloquear páginas na memória é atribuído à conta de inicialização do serviço do SQL Server.

  • O
    AWE
    memória está ativada.

Observação:
Quando uma das seguintes condições for verdadeira, o
Bytes particulares
contador para o processo de Sqlservr.exe deve indicar a quantidade de memória consumida pelos serviços do SQL Server para várias instâncias do SQL Server.

Monitorar o valor mínimo da memória disponível no Windows


Para monitorar a quantidade de memória está disponível no Windows, use um dos seguintes métodos:

  • Use o
    MBytes disponíveis
    contador no Monitor de desempenho para indicar a quantidade de memória disponível.

  • Exibir o
    Memória física (MB) – livre
    valor na guia desempenho do Gerenciador de tarefas.


    Observação:
    Em alguns sistemas operacionais, a Memória física (MB) – livre
    valor é rotulado como o valor de Memória física (K) – disponível .

Referências

Para obter informações sobre o modelo de serviços incrementais para SQL Server, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

935897 um modelo de serviços incrementais está disponível da equipe do SQL Server para fornecer hotfixes para problemas relatados



Para obter mais informações sobre o esquema para nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

822499 Novo esquema para nomeação para pacotes de atualização de software do Microsoft SQL Server

Para obter mais informações sobre a terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

824684 descrição da terminologia padrão usada para descrever as atualizações de software

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?
Ao pressionar enviar, seus comentários serão usados para aprimorar os produtos e serviços da Microsoft. Seu administrador de TI poderá coletar esses dados. Política de Privacidade.

Agradecemos seus comentários!

×