
mysqldump da loja rodando há quarenta minutos e o arquivo já passou de 12 GB. Antes de culpar o servidor, meça report_event, report_viewed_product_index e cron_schedule: em loja com um ano de estrada elas costumam ser metade do dump e não valem um byte de backup.
SELECT table_name, ROUND((data_length + index_length) / 1024 / 1024) AS mb
FROM information_schema.tables
WHERE table_schema = 'magento'
ORDER BY (data_length + index_length) DESC
LIMIT 15; A ideia é simples: estrutura de todas as tabelas, dados só das que importam. O Magento recria o conteúdo das descartáveis sozinho na primeira requisição e no primeiro cron. Essa é a lista que eu uso no 2.4.7 e no 2.4.8.
DB=magento
LIXO="report_event report_viewed_product_index report_compared_product_index
catalog_compare_item customer_visitor customer_log cron_schedule
adminnotification_inbox"
IGN=""
for T in $LIXO; do IGN="$IGN --ignore-table=$DB.$T"; done
mysqldump --single-transaction --quick --no-tablespaces $IGN $DB > dados.sql
mysqldump --single-transaction --no-tablespaces --no-data $DB $LIXO > vazias.sql O search_query ficou fora da lista de propósito: tem cara de log, mas é lá que moram os redirecionamentos e a flag de termo sugerido que alguém configurou em Marketing > Termos de Busca. Isso é configuração, não lixo.
Para restaurar, mande os dois na ordem: cat vazias.sql dados.sql | mysql magento. Faça isso num banco vazio ou de teste: o dump traz um DROP TABLE por tabela e apaga o que já estiver lá antes de você perceber.
O --no-tablespaces é obrigatório quando o usuário do dump não tem o privilégio PROCESS — sem ele o mysqldump 8 aborta com Access denied logo na primeira tabela. E se o servidor usa GTID, acrescente --set-gtid-purged=OFF, senão o arquivo sai com um SET GLOBAL gtid_purged que trava a importação em outra máquina.
Fecha o pacote com os arquivos de configuração: tar czf config.tar.gz app/etc/env.php app/etc/config.php. Backup de Magento sem o env.php é backup inútil — a crypt key mora lá dentro, e sem ela nada que está criptografado no banco volta a abrir.
O retorno do array_map voltou com índice 0, 1, 2 e o código que dependia da chave quebrou. Entenda quando…
Escreveu a preference e o Magento 2 continua usando a classe original? Confira a área do di.xml, o generated/code e…
Cadastrou Cor direto na aba Atributos do produto e o filtro por atributo vem vazio. Veja como identificar o tipo,…
Precisa de um SELECT no banco do cliente e só tem SSH? O wp db query pega a senha do…
A home abre e todo post interno devolve 404 depois da migração. Regrave as regras de reescrita pelo WP-CLI e…
A grid do seu módulo monta o cabeçalho e não traz linha nenhuma. Registre a collection do UI component listing…