Um diagnóstico rápido do seu banco Magento
Desenvolvimento, Magento 2
Atualizado em 01 de março de 2022
Você deve concordar que a maioria das pessoas utiliza sequer a metade dos recursos disponíveis nos seus celulares, sistemas operacionais, e principalmente nos softwares e plataformas.
Quando o assunto é Magento 1 ou Magento 2 isso não é diferente. Como sabe cheguei até a criar um curso para mostrar a fundo boa parte dos recursos do Magento 2, e mesmo assim ainda há muito mais para falar e aprender.
Se você é um desenvolvedor(a) Magento provavelmente conhece o n98-magerun. Trata-se de uma ferramenta que executamos no terminal e que traz uma série de recursos adicionais além do conhecido bin/magento
. Eu falo dela e de outras 10+ ferramentas de desenvolvimento no Magento 2: O Curso.
Assim como a maioria dos mortais eu também não conheço e nem uso todos os recursos das ferramentas que utilizo. Mas de vez em quando invisto algum tempo para conhecê-las melhor. E olha só o que eu encontrei desta vez…
Diagnosticando problemas e má configuração no seu banco Magento
O n98 tem um “comandinho” que nos mostra várias informações úteis do nosso banco de dados e como ele está configurado.
magenteiro@magento2magenteiro$ ./n98-magerun2.phar db:status +--------------------------------+-------------+-----------------------------------------------------------------------------+ | Variable Name | Value | Description | +--------------------------------+-------------+-----------------------------------------------------------------------------+ | Aborted_connects | 0 | Total number of failed attempts to connect to MySQL. | | Created_tmp_disk_tables | 691 | Number of temporary tables that have been created on disk instead of | | | | in-memory. Lower is better. | | Handler_read_first | 43 | Number of times a table handler made a request to read the first row of a | | | | table index. | | Handler_read_rnd_next | 285576 | Number of requests to read the next row in the data file. This value is | | | | high if you are doing a lot of table scans. Generally this suggests that | | | | your tables are not properly indexed or that your queries are not written | | | | to take advantage of the indexes you have. | | Innodb_buffer_pool_pages_dirty | 0 | Indicates the number of InnoDB buffer pool data pages that have been | | | | changed in memory, but the changes are not yet written (flushed) to the | | | | InnoDB data files | | Innodb_buffer_pool_wait_free | 0 | Number of times MySQL has to wait for memory pages to be flushed. | | Key_reads | 0 | Number of filesystem accesses MySQL performed to fetch database indexes. | | Max_used_connections | 8 | Max number of connections MySQL has had open at the same time since the | | | | server was last restarted. | | Open_tables | 164 | Number of tables that are currently open. | | Select_full_join | 382 | Number of full joins MySQL has performed to satisfy client queries. | | Slow_queries | 0 | Number of queries that have taken longer than usual to execute. | | Threads_connected | 2 | Total number of clients that have currently open connections to the server. | | Uptime | 2 hours ago | Time since the server was last restarted. | | Full table scans | 37.30% | HINT: "Handler_read_rnd_next" is reset to zero when reached the value of | | | | 2^32 (4G). | | InnoDB Buffer Pool hit | 99.88% | An InnoDB Buffer Pool hit ratio below 99.9% is a weak indicator that your | | | | InnoDB Buffer Pool could be increased. | +--------------------------------+-------------+-----------------------------------------------------------------------------+
Como você pode ver, o comando n98-magerun2 db:status
traz uma série de variáveis e configurações do banco de dados onde a loja Magento deste diretório está configurado.
E não precisa ser nenhum especialista em banco de dados para tirar vantagem disso. O N98 traz uma série de dicas úteis na última coluna.
Eis algumas informações adicionais pra você:
- Aborted_connects – número de conexões sem sucesso feitas ao banco de dados. Isso também incluí conexões feitas com credenciais inválidas. Certifique-se de não permitir conexões externas ao seu banco para ter um número real de problemas que pode haver em seu banco.
- Slow_queries – número de queries que estão levando muito tempo para serem executadas. Isso impacta negativamente em diversos outros fatores da sua loja. Veja como encontrar queries lentas no Magento 2.
- Uptime – tempo que seu banco está ligado desde que foi iniciado a última vez. Idealmente só você deve reiniciar seu banco de dados. Se este número for sempre muito baixo, pode haver um problema.
- InnoDB Buffer Pool hit – percentual de vezes que um dado foi trazido do buffer ao invés de realizar uma nova consulta. Se o número for menor que 99,9% pode ser que a configuração do innodb_buffer_pool_size pode ser aumentada para armazenar mais informações.
- Max_used_connections – número máximo de conexões simultâneas desde a última inicialização do banco. Se este número for muito discrepante com o número de usuários simultâneos do seu site, pode ser que tenha sofrido algum tipo de ataque ou há algo errado.
Onde encontrar o N98
Você encontra o N98 para Magento 1 e Magento 2 neste link.
O comando acima funciona em ambas versões.
Há algumas semanas eu falei sobre um outro comando legal para exportar seu banco de dados ocultando dados sensíveis. Ele também usa o N98. Espero que goste.
Grande abraço e até a próxima.
- PagSeguro (PagBank) para Magento 1 recebe a Nova Geração - 9 de abril de 2024
- Recorrência no WooCommerce Sem Plugins Pagos - 28 de janeiro de 2024
- Chargeback. O que é, e como se livrar deles. - 19 de dezembro de 2023
Deixe seu comentário
[fbcomments url="https://www.magenteiro.com/blog/magento-2/diagnostico-banco/"]