Olá. Aqui é a Komiya. Um dia, enquanto eu revisava a receita para o chef, um colega disse algo assim.
"Assim que você clicar no link do information_schema do phpmyadmin
O local ficou mais pesado e o espaço em disco aumentou em dezenas de GB, e agora caiu e se acalmou.
Você sabe o que causou isso?"
É muito perigoso clicar em informações_schema em phpmyadmin - K52. Foi acompanhado pelo NIKKI ver3.0.
Eu não entendia bem, então resmungava sobre o fenômeno, e o tipo MySQL ACE yoku0825 me disse que innodb_stats_on_metadata=1 pode ser ambíguo. Quando pesquisei no Google, vi uma página chamada innodb_stats_on_metadata - BLOG DO TAKUMI SAKAMOTO e achei que sabia o que estava acontecendo.
Previsão do que aconteceu: ・O status da atualização da tabela estava em um estado em que a condição para atualização estatística foi atingida ・Ao clicar no link de informações_schema, uma consulta que acionou a atualização estatística equivalente para mostrar o status da tabela foi executada ・O equivalente de processamento a ANALYZE_TABLE foi executado para atualizar as informações estatísticas ・O disco transbordou porque a cópia da tabela foi criada no tmpdir e a taxa de utilização diminuiu porque o processo foi concluído ・Acredita-se que a carga da CPU seja devido ao processo de manutenção da TABLE equivalente ao ALTER e à E/S do disco associada a ele
Encontrei uma descrição das condições para a ocorrência das atualizações estatísticas do innodb no blog Han. Obrigado, como sempre. Parabéns. E isso sozinho não é suficiente, então vou acrescentar um pouco.
Quanto a qual versão ligar ou desligar, se você olhar o manual oficial, parece que está DESLIGADO da 5.6.6 e LIGADO antes disso.
Em seguida, se você definir o innodb-stats-on-metadata em 0, precisará fazer a manutenção por conta própria, mas o que devo fazer?
Se você quiser apenas adicionar manutenção básica e atualizar estatísticas, deve usar ANALYZE TABLE, ou se quiser desfragmentar, deve usar ALTER TABLE. O OPTIMIZE do InnoDB executa o ALTER apenas internamente, então se você não quiser ficar travado por READ, pode usar o ALTER TABLE. Recomenda-se estimar o tempo que levará em um ambiente de teste com dados (e especificações) o mais parecidos possível com produção. Eu colei um link para o manual na tabela. O lado esquerdo é um link japonês 5.1, e o lado direito é um link inglês 5.6.
・Cuidado com o site de referência innodb_stats_on_metadata - BLOG DE TAKUMI SAKAMOTO Caminho do Computador do Han: A Maneira Correta de Interagir com Tabelas InnoDB para Adultos. O Caminho do Computador do Han: Vamos Dominar a TABELA ALTERADA. Introdução às Instruções de Manutenção de Tabelas de Análise de Problemas MySQL MySQL :: Manual de Referência MySQL 5.5 :: 13.7.2 Instruções de Manutenção de Tabela Percona Toolkit pt-online-schema-change | Usando com segurança pt-online-schema-change - Ao redor do Mundo
Desde a versão 5.6, algumas ALTER TABLES estão disponíveis online, mas parece melhor manter o seguinte da seguinte forma. Memorando diário: Quando tentei o MySQL 5.6 online ALTER TABLE, encontrei innodb_online_alter_log_max_size MySQL foi eliminado pelo OOM Killer na ALTER TABLE online | Blog do Engenheiro de Mídia GMO
Muitas pessoas usam MySQL e estão familiarizadas com ele, então acho bom ter muita informação mesmo que algo aconteça. Obrigado por ler.