Estatísticas de base de dados desactualizadas diminuir o desempenho do servidor do SharePoint, causam interrupções e geram erros de tempo de execução

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: 3103194
Sobre as estatísticas de base de dados
Estatísticas de optimização de consulta são objectos que contêm informações estatísticas sobre a distribuição dos valores de uma ou mais colunas de uma tabela ou vista indexada. O otimizador de consulta utiliza estas estatísticas para estimar a cardinalidade ou resultar do número de linhas, na consulta. Estas estimativas de cardinalidade de activar o otimizador de consulta criar um plano de consulta de alta qualidade.

Por exemplo, o otimizador de consulta pode melhorar o desempenho, utilizando estimativas de cardinalidade para seleccionar o índice de procura operador em vez do operador de digitalização do índice de consumir mais recursos de consulta. Caso contrário, estatísticas desactualizadas poderão diminuir o desempenho de consulta através da utilização de planos de consulta ineficaz.

Implementações de SharePoint de grandes empresas têm de ter planos de manutenção de base de dados para actualizar as estatísticas de base de dados em bases de dados que residem no Microsoft SQL Server. Os clientes não devem confiar apenas nos trabalhos de manutenção de base de dados baseada no SharePoint para efectuar estas tarefas. Para mais informações, consulte Procedimentos recomendados para o SQL Server num farm do SharePoint Server.
Sintomas
Quando as estatísticas de base de dados se tornam desactualizadas, instalações de servidor do SharePoint poderão detectar um ou mais dos seguintes sintomas:
  • Tempos de carregamento lento e problemas de desempenho que podem gerar um erro de HTTP 500 quando abre uma página do site
  • Desempenho mais lento do que gera mensagens de erro como a seguinte:

    Serviço indisponível

    Excepção de SQL desconhecido 53

    Erro de servidor na aplicação '/' Erro de tempo de execução
  • Preforming procura pesquisa causas inesperado o desempenho do servidor de SQL, o bloqueio da base de dados e bloquear
  • Tarefas de temporizador de execução demorada, como as tarefas de "Microsoft SharePoint Foundation dados processamento de utilização" demoram progressivamente mais tempo a concluir durante cada iteração
  • A incapacidade de abrir um site do SharePoint e uma mensagem de erro semelhante à seguinte:

    System.Web.HttpException inesperado: Pedido foi excedido
  • Interrupções de composição do site quando carregar navegação e a seguinte mensagem de erro:

    Não foi possível obter crianças para o nó PortalSiteMapProvider
  • Utilização elevada da CPU no servidor que está a executar o SQL Server quando processa as consultas de SharePoint
Causa
Estes problemas podem ser causados pelas estatísticas de base de dados desactualizadas. SharePoint executa uma tarefa de temporizador diariamente para actualizar as estatísticas de base de dados utilizando o procedimento SQL proc_updatestatistics . No entanto, por diversas razões, esta tarefa de temporizador pode não ser concluída ou não actualizar todas as tabelas consistentemente. Por exemplo, se uma cópia de segurança está a ser executado na base de dados de conteúdos do SQL Server em simultâneo com a tarefa de temporizador do SharePoint, não continue a tarefa.

Quando a tarefa de temporizador do SharePoint que actualiza as estatísticas estiver concluída, os eventos seguintes podem ser escritos os registos ULS:
  • e9bf "Ocorreu um erro ao actualizar as estatísticas da base de dados {0}"
  • cm1y "estatísticas de actualização da base de dados {0}"
  • dbl2 "a ignorar estatísticas actualização da base de dados {0} porque o respectivo estado é {1}"
  • cm1x "estatísticas de actualização em todas as bases de dados no {0}"
Se estas condições não são monitorizadas de perto e não são tomadas medidas correctivas, estatísticas de base de dados se tornam desactualizadas e, eventualmente, ocorrem problemas de desempenho do SharePoint.
Resolução
Para impedir que estes sintomas e potenciais falhas de serviço, planos de manutenção do SQL Server devem ser implementados para manter estatísticas de base de dados de conteúdos do SharePoint actualizadas utilizando a opção de FULLSCAN. Para mais informações, consulte Estatísticas de índice.

Quando a aplicação do plano de manutenção do SQL Server para actualizar as estatísticas sobre as bases de dados do SharePoint, não é necessário para desactivar a tarefa do SharePoint. No entanto, uma vez que estas tarefas de manutenção executar funções semelhantes de ambas as localizações, é admissível para desactivar a tarefa de temporizador de farm do SharePoint. Para mais informações sobre como gerir a tarefa de actualização do índice a partir do SharePoint Server, consulte Bases de dados utilizadas pelo SharePoint têm desactualizadas estatísticas de índice (SharePoint 2013).
Mais Informação
Actualizar as estatísticas de bases de dados de conteúdo SharePoint, utilizar a opção de FULLSCAN, numa base diária do SQL Server é um procedimento recomendado de recomendar. Para mais informações, consulte Procedimentos recomendados para o SQL Server num farm do SharePoint Server e Manutenção de base de dados para o SharePoint Foundation 2010.

No entanto, se o farm do SharePoint está actualmente com problemas de desempenho devido às estatísticas desactualizadas, as seguintes informações podem ser utilizadas como um passo de atenuação únicas para minimizar este problema.

Para apresentar informações de estatísticas de base de dados da base de dados específica, execute a consulta seguinte:
-- Checking the DB Statsselect a.id as 'ObjectID', isnull(a.name,'Heap') as 'IndexName', b.name as 'TableName', stats_date (id,indid) as stats_last_updated_time from sys.sysindexes as a inner join sys.objects as b on a.id = b.object_id where b.type = 'U'
Para mais informações sobre a revisão de estatísticas de base de dados, consulte DBCC SHOW_STATISTICS.

Para actualizar as estatísticas de base de dados numa base de dados único que utiliza a opção de FULLSCAN, execute a seguinte consulta:
-- Update DB StatsEXEC sp_MSforeachtable 'UPDATE STATISTICS ? WITH FULLSCAN'
Nota importante A opção "sp_MSforeachtable" é um procedimento não documentado que é fornecido "tal como está" e só deve ser utilizado para atenuar o problema imediato. Não recomendamos que utilize este procedimento como parte de um plano de manutenção regular. Em vez disso, consulte a nossaACTUALIZAR as estatísticas do (Transact-SQL) documentação sobre como implementar um plano para actualizar as estatísticas, utilizando a opção de FULLSCAN.

Dependendo de como desactualizado tenham tornado as estatísticas de base de dados, poderá ter de limpar a cache de plano de consulta através da execução da DBCC FREEPROCCACHE comando depois de actualizar as estatísticas de base de dados. Encontrará a sintaxe e argumentos para que este procedimento no DBCC FREEPROCCACHE (o Transact-SQL). Este procedimento garante que novas consultas utilizam o plano de execução óptima depois das estatísticas de base de dados são actualizadas. Por exemplo, consulte a seguinte consulta:
-- Remove all elements from the plan cacheDBCC FREEPROCCACHE
Nota importante Executar o comando DBCC FREEPROCCACHE limpa a cache para todos os planos de consulta na instância do SQL. Este comando deve ser entendido bem antes de executar durante as horas de produção.

Se o DBCC FREEPROCCACHE comando não foi executado depois de actualizar as estatísticas de base de dados desactualizados, consultas com planos de execução ineficaz poderão continuar a residir na cache e ser utilizadas. Se for este o caso, forçar um recompile no procedimento armazenado especificado utilizando o procedimento armazenado (ver sp_recompile (Transact-SQL)). Por exemplo, consulte a seguinte consulta:
USE SP2013_Content_DBGOsp_recompile proc_getwebnavstruct
A executar osp_recompile comando em conjunto com os parâmetros de tabela, função ou procedimento destina-se sem afectar a instância de um único elemento na cache para remoção.

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 3103194 - Última Revisão: 10/10/2015 19:41:00 - Revisão: 1.0

Microsoft SharePoint Server 2013, Microsoft SharePoint Server 2010, Microsoft Office SharePoint Server 2007

  • kbqfe kbsurveynew kbexpertisebeginner kbbug kbfix kbtshoot kbmt KB3103194 KbMtpt
Comentários