Backup MySQL com mysqldump sem travar tabelas e indisponibilidade de conexões
Quando temos de fazer backup de um grande servidor MySQL usando mysqldump, as grandes tabelas e ou atividade acabam exibindo indisponibilidade de conexões ao banco e as aplicações falham. Algumas bem feias na tela do usuário, por não saberem esperar e tentar novamente.
Dependendo do tamanho do banco, o dump pode demorar muito tempo mesmo, muito além do que um usuário esteja disposto a esperar.
Para contornar isso, sugiro utilizar duas opções ADICIONAIS no mysqldump do seu script chamado por cron job.
--single-transaction
para innodb transforma em transação, não travando para a "maioria" das operações de alteração de bancos. Operações que alteram tabelas continuam travadas.
--quick
recupera registros um de cada vez para tentar não explodir memória em tabelas grandes. Demora mais, porém é mais seguro.
Implantado em produção de missão crítica sobre MySQL e Debian GNU/Linux Jessie 8.x.
Comentários
Postar um comentário