Ir para conteúdo
Fórum Script Brasil
  • 0

Matar query lenta automaticamente


Fabricio Carneiro

Pergunta

Prezados,

Estou precisando de um parâmetro de configuração para matar automaticamente querys que passam de 5 segundos consultando.

O meu problema é que os outros usuários travam quando ocorrem esses tipos de consultas muito extensas/complexas, e infelizmente não tenho muito o que possa fazer para melhorar algumas destas consultas, no entanto em nenhum dos casos dos meu clientes eles deveriam fazer essas analises complexas em  períodos tão grandes, assim evito o problema de travar o sistema em rede e forço os clientes a me procurarem para analisar a real necessidade deste tipo de consulta.

Tentei os parametros abaixo no my.ini porêm sem sucesso.

connect_timeout          = 5
delayed_insert_timeout   = 5
innodb_lock_wait_timeout = 5
interactive_timeout      = 5
net_read_timeout         = 5
net_write_timeout        = 5
slave_net_timeout        = 5
#table_lock_wait_timeout  = 5
wait_timeout  = 5
table_open_cache = 5
thread_cache_size = 5
 

Alguêm poderia me ajudar ?

agradeço desde já.

query com mais de 5 segundos.png

Editado por Fabricio Carneiro
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Acredito que só era necessário o wait_timeout e o interactive_timeout.

No retorno do "SHOW VARIABLES" retornam os valores que você configurou mesmo?

De repente ele está usando outro arquivo para configurações para um determinado banco ou usuário...

Link para o comentário
Compartilhar em outros sites

  • 0

o problema é que wait_timeout e interactive_timeout derrubam conexões inativas somente, por exemplo, se eu rodar a query pesada ou lenta, quando terminar o processamento a conexão entrará em sleep, se ficar 5 segundos em sleep ela cairá, o que não é meu problema, meu problema é derrubar  a conexão/consulta que está demorando muito para trazer um retorno, ou seja, durante o processamento.

 

por exemplo, quero que quando a query ultrapassar 5 segundos de processamento (sem retorno/conclusão) a conexão seja derrubada, como uma válvula de segurança para não sobrecarregar o servidor.

 

Algo parecido com o "query timeout" do SQL Server.

forum.jpg

Editado por Fabricio Carneiro
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...