Postagens

Mostrando postagens com o rótulo produção

Backup MySQL com mysqldump sem travar tabelas e indisponibilidade de conexões

Imagem
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.