Pergunta

Estamos usando o MySQL versão 5.0 e a maioria das tabelas são InnoDB. Corremos replicação para um servidor escravo. Estamos pensando em fazer backup dos arquivos de log do MySQL em uma base diária.

Perguntas

  • Existe alguma outra maneira de fazer um backup incremental sem usar os arquivos de log?
  • Quais são as melhores práticas ao fazer backups incrementais?
Foi útil?

Solução

AFAIK a única maneira de fazer backups incrementais é usando o log binário. Você tem outras opções, se você quer fazer backups completos (InnoDB hotcopy), mas meios incrementais que você precisa para registrar todas as transações feitas.

Você precisa se perguntar por que você está fazendo backup de dados. Desde que você tem um escravo para a replicação, presumo que o backup é primarly para reverter dados em caso de eliminação acidental?

Eu provavelmente iria rodar os logs a cada 1 hora e fazer um backup dele. Significado, restaurando deixaria os dados, no máximo, uma hora de idade, e você pode restaurar a qualquer ponto no tempo desde o último snapshot completo.

Outras dicas

Você pode despejar seus esquemas regularmente com mysqldump, usando sempre o mesmo nome de arquivo e caminho para cada esquema (ou seja, substituindo o mais recente)

Depois que combinam com qualquer ferramenta de backup que suporta incremental / de backup delta, por exemplo rdiff-backup, duplicidade, Duplicati ou Areca Backup. Um exemplo de docs duplicidade:

Porque usos duplicidade librsync, os arquivos incrementais são o espaço eficiente e só gravar as partes de arquivos que foram alterados desde o último backup

Dessa forma, o primeiro backup seria a cópia compactada do 1º despejo completo, eo segundo deverá conter as diferenças comprimido do 1º e 2º despejo e assim por diante. Você pode restaurar o arquivo mysqldump de qualquer ponto no tempo e, em seguida, restaurar o arquivo em MySQL.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top