locked
Problemas com Lock - URGENTE ! RRS feed

  • Pergunta

  • Bom Dia.

     
    É o seguinte, entrei a pouco tempo em uma empresa onde o banco de dados gera muita lentidão, mas deste ultimo final de semana pra cá está um caos na empresa,  vamos ao caso.
     
    No sabado foi executada uma rotina de indexação de todas as tabelas do banco de dados e a mesma estourou o log do banco, onde no sabado mesmo os usuarios não conseguiam acessar nada, logo depois que me informaram do problema limpei o mesmo e o pessoal continuou a trabalhar, mais depois disso a lentidão piorou 100%, no banco, em qualquer transação de insert e update gera lock no banco e lentidão para o usuario.
     
    Acredito em duas possibilidades, o HD ter enchido e de alguma forma está mais dificil alocar espaço no banco apos a limpeza do LOG, ou senão a indexação não funcionou corretamente.
     
    Se tiverem uma ideia do que possa ter acontecido peço por favor uma ajuda, porque a situação aqui realmente está bastante dificil.
     
    Desde de já agradeço.
    quarta-feira, 19 de dezembro de 2007 10:52

Todas as Respostas

  • Bom Dia,

     

    É bem possível que você esteja com transações muito longas e um nível de isolamento excessivo. É possível a presença de consultas mal elaboradas e indexação inadequada, mas vamos por partes...

     

    Primeiramente é preciso capturar as consultas mais lentas e verificar o que pode ser feito para melhorá-las. Rode um Profiler e analise as colunas Duration, Reads e Writes e identifique as consultas que possuírem os maiores valores. Foque na otimização dessas consultas.

     

    Posteriormente, é preciso se encarregar de que a indexação está adequada ou pelo menos aceitável. Rode um Profiler, capture o conteúdo e submeta-o ao Index Tuning Wizard e veja as propostas de melhoria. Programa-se para executá-las.

     

    Feito isso rode a procedure sp_lock e verifique se os bloqueios diminuíram. Menos bloqueios, acessos mais rápidos e menos lentidão.

     

    Documente as ações tomadas e veja se a melhora foi satisfatória. Se os problemas persistirem, poste novamente.

     

    [ ]s,

     

    Gustavo

    quarta-feira, 19 de dezembro de 2007 11:40
  • Itens a serem analisados:

     

    - versão da build do SQL Server em uso;

    - configuração do servidor e do SQL Server;

    - atualização de indices e estatisticas;

    - fragmentação de dados (devido a falta de indice clusterizado);

    - consultas com alto tempo de duração para execução;

    - consultas com o tempo de cpu menor do que o tempo de duração total (pode indicar que essa consulta ficou bloqueada);

     

    e por ai vai...

     

    e lembre-se, se for ambiente de Produção e a situação estiver critica é melhor contratar ajuda direta.

     

    quarta-feira, 19 de dezembro de 2007 12:32
  • Alziro,

     

    Primeiramente problemas de lentidão podem ser gerados, por fragmentação nos índices e também nas tables, outras causas que podem estar gerando este problema por ser falha em seus discos rígidos, ou até mesmo uma possível falha no serviço de DNS.

     

    Mas analisando o que você relatou, em relação a limpeza do log, não adianta somente limpar o log, é também recomendável diminuir o tamanho do log.

     

    Mais uma observação, após fazer a reindexação dos índices você poderia atualizar as estatísticas do seu banco.

     

    Gostaria de saber, qual é a versão do seu SQL Server?

     

    Você tem algum Service Pack instalado?

     

    Qual é o sistema operacional?

    quarta-feira, 19 de dezembro de 2007 13:28
    Moderador
  • Amigo, eu tenho um artigo escrito no MCDBA Brasil do Nilton, onde demonstro como identificar gargalos no SQL Server 2000, tente executar esse procedimento e retorne pra nós os resultados:

     

    http://www.mcdbabrasil.com.br/modules.php?name=News&file=article&sid=358

     

    http://www.mcdbabrasil.com.br/modules.php?name=News&file=article&sid=367

     

    Vamos com isso identificar as principais causas de problema no seu SQL Server.

     

     

    Aguardo retorno.

     

    Abraços,

    quarta-feira, 19 de dezembro de 2007 13:35