Local do log de erro?

15

O MySQL escreve algum arquivo de log? Se sim, qual é o caminho (no ubuntu / Linux)?

Maulik Patel
fonte

Respostas:

11
  • Log geral - todas as consultas - consulte VARIABLE general_log
  • Log lento - consultas mais lentas que long_query_time-slow_query_log_file
  • Binlog - para replicação e backup - log_bin_basename
  • Log de retransmissão - também para replicação
  • erros gerais - mysqld.err
  • iniciar / parar - mysql.log(não muito interessante) -log_error
  • Registro de refazer do InnoDB - iblog*

Veja a variável basedire datadiro local padrão para muitos logs

Alguns logs são ativados / desativados por outras VARIÁVEIS. Alguns são gravados em um arquivo ou em uma tabela.

Rick James
fonte
3

Os logs do MySQL são determinados pelas variáveis ​​globais, como:

  • log_error para o log de mensagens de erro;
  • general_log_filepara o arquivo de log de consulta geral (se ativado por general_log);
  • slow_query_log_filepara o arquivo de log de consulta lenta (se ativado por slow_query_log);

Para ver as configurações e os locais dos logs, execute este comando shell:

mysql -se "SHOW VARIABLES" | grep -e log_error -e general_log -e slow_query_log

Obrigado a @kenorb em /programming//a/37685324/470749

Ryan
fonte
2

Sim, o MySQL grava um arquivo de log.

Seu caminho é /var/log/mysql.logdefinido na log_errorvariável de configuração.

Há também um arquivo de log para erros /var/log/mysql.err

Brijesh Goswami
fonte
2

Além do log de erros no Windows, nenhum dos logs do MySQL está ativado. Isso é para maximizar os recursos do servidor para o banco de dados. Por esse motivo, é aconselhável ativá-los conforme a necessidade.

Isso também pode dificultar saber quais logs estão ativados a qualquer momento. Por esse motivo, eu gosto de ter todas as minhas variáveis ​​de configuração em um único local para que eu possa procurá-las rapidamente. Existem algumas ferramentas GUI que são boas para isso. Eu pessoalmente uso o Navicat para MySQL e Navicat Premium .

Ambos têm uma ferramenta de monitoramento que contém uma guia com todas as variáveis ​​do servidor em uma lista abrangente.

variáveis ​​de servidor general_log e general_log_file na ferramenta Navicat Server Monitor

Cumprimentos!

Rob Gravelle
fonte
Infelizmente, isso só definirá o valor até a próxima reinicialização. OTOH, o Registro geral é um problema, portanto geralmente é bom desativá-lo logo após obter as informações necessárias. (Outros registros provavelmente pode ser deixado ligado.)
Rick James
1

Execute o comando abaixo no Terminal para encontrar o caminho exato:

 mysqladmin variables | grep log_error
Sachin Singh
fonte
1

Arquivos de log geralmente estão localizados em /var/log/. Os arquivos de log do servidor MySQL são geralmente identificados por mysql.nameOfLogFile.

Hector
fonte
1

Um pouco tarde aqui,

Você pode encontrar o local atual do arquivo de log no MYSQL, inspecionando as variáveis ​​globais.

Por exemplo, o abaixo mostrará se o seu general_log está ativado ou desativado e a localização do general_log_file no seu sistema.

SHOW GLOBAL VARIABLES LIKE '%general%';
Jon
fonte