Resposta oficial | As variáveis na memória da instância slow_query_log_file são inconsistentes com as configurações do arquivo de configuração.
A coluna de respostas oficiais concentra-se nas perguntas do banco de dados GreatSQL e seleciona perguntas típicas de fóruns oficiais e grupos de discussão para respostas detalhadas. O conteúdo cobre instalação e implantação de banco de dados, otimização de configuração, solução de problemas, testes de desempenho, etc.
No artigo, não apenas fornecemos soluções, mas também analisamos detalhadamente as causas dos problemas com exemplos para melhorar a compreensão dos leitores sobre o banco de dados GreatSQL.
Se você encontrar problemas técnicos difíceis ao gerenciar e usar o banco de dados GreatSQL e quiser aprender e melhorar sistematicamente as habilidades de banco de dados, leia o artigo de resposta oficial. Você não apenas pode encontrar soluções confiáveis aqui, mas também pode aprender ideias e experiências de otimização de banco de dados.
Ao ler o conteúdo das respostas oficiais, você pode dominar de forma abrangente as habilidades de gerenciamento de banco de dados GreatSQL e lidar habilmente com várias situações de falha. Venha acompanhar a coluna oficial de respostas e cresça conosco!
Esta questão vem do fórum. O ambiente de banco de dados do usuário é apresentado aproximadamente da seguinte forma:
nome | Versão |
---|---|
Versão do sistema operacional | BigCloud Enterprise Linux 8 |
Versão do banco de dados | Ótimo SQL-8.0.32-25 |
Problemas do usuário
As informações do problema fornecidas pelo usuário são as seguintes:
1. O arquivo de configuração My.cnf registra lentamente a configuração relacionada ao caminho do arquivo:
slow_query_log_file = /data/GreatSQL/logs/slow.log
slow_query_log_file
2. Porém, as variáveis encontradas na memória são inconsistentes com a configuração.
mysqladmin var |grep slow_query_log_file
| slow_query_log_file | /data/GreatSQL/logs/bclinux01.log.000001
Responda às perguntas dos usuários
1. Por que o nome do arquivo de log lento gerado no disco (no diretório /data/GreatSQL) é inconsistente com as variáveis consultadas na memória e aquelas definidas no arquivo de configuração?
Levantando uma questão: você já modificou a configuração do binlog e modificou slow_query_log_file por engano?
Este problema ocorre quando o arquivo de configuração é escrito comoslow_query_log_file = /data/GreatSQL/logs/slow.log
show global variables like '%slow%';
Exibir na memória/data/GreatSQL/logs/bclinux01.log
set global slow_query_log_file='/data/GreatSQL/logs/bclinux01.log'
Só pode ser reproduzido através de comandos SQL .
2. Se você slow_query_log_file = /data/GreatSQL/logs/slow.log
comentar as informações de configuração no arquivo de configuração, o nome do arquivo no disco ainda será bclinux01.log.000001
Após comentar este parâmetro no arquivo de configuração my.cnf slow_query_log_file = /data/GreatSQL/logs/slow.log
, se a instância do banco de dados não for reiniciada, set global slow_query_log_file
os parâmetros que foram modificados antes não terão nenhum impacto na variável de parâmetro. Se a instância do banco de dados for reiniciada, o nome do arquivo de log lento será atualizado para; o nome do host-slow.log
O usuário perguntou por que o log lento contém 0000001 e vários arquivos slow.log.xxxxxx são sempre gerados. O motivo é que os parâmetros a seguir são configurados, o banco de dados pesquisará para gerar arquivos slow.log.xxxxxx. .
max_slowlog_size = [0 - 1073741824]
max_slowlog_files = [0 - 102400]
- max_slowlog_size
Quando o tamanho do log atingir o valor definido, o servidor pesquisará o log lento. O valor padrão é 0. Se o tamanho for limitado e esse recurso estiver habilitado, o servidor renomeará o arquivo de log lento para slow_query_log_file.000001
- max_slowlog_files
Esta variável limita o tamanho total dos arquivos de log lentos e é usada junto com max_slowlog_size
O servidor cria e adiciona logs lentos até que o limite superior do intervalo seja atingido. Quando o máximo é atingido, o servidor cria um novo arquivo de log lento com um número de sequência mais alto e exclui o arquivo de log com o número de sequência mais baixo para manter o valor total definido dentro do intervalo.
Resolver problemas do usuário
Após passar set global slow_query_log_file = '/data/GreatSQL/slow.log'
pelas configurações, verifique novamente os dados da memória e o display estará correto:
greatsql> show global variables like '%slow%';
| slow_query_log_file | /data/GreatSQL/slow.log.000001 |
Aproveite o GreatSQL :)
Sobre GreatSQL
GreatSQL é um banco de dados doméstico independente de código aberto adequado para aplicações de nível financeiro. Possui muitos recursos básicos, como alto desempenho, alta confiabilidade, alta facilidade de uso e alta segurança. e é utilizado em ambientes de produção online, totalmente gratuito e compatível com MySQL ou Percona Server.
Links relacionados: Guia da comunidade GreatSQL GitHub Bilibili
Comunidade GreatSQL:
Sugestões e feedback de recompensas da comunidade: https://greatsql.cn/thread-54-1-1.html
Detalhes do envio do prêmio do blog da comunidade: https://greatsql.cn/thread-100-1-1.html
(Se você tiver alguma dúvida sobre o artigo ou tiver ideias exclusivas, você pode acessar o site oficial da comunidade para perguntar ou compartilhá-las ~)
Grupo de intercâmbio técnico:
Grupo WeChat e QQ:
Grupo QQ: 533341697
Grupo WeChat: Adicione o GreatSQL Community Assistant (WeChat ID:) wanlidbc
como amigo e espere que o assistente da comunidade adicione você ao grupo.