hardlinking ocupa muito espaço

3

Eu fiz um script de backup incremental rsync para o meu servidor que copiará um backup de banco de dados MySQL e um caminho de pasta especificado para um servidor remoto. Aqui está o código no Github.

Trecho de código das linhas 53-57:

############### Create most current hand link

echo "Creating most current hard link on backup server $most_recent_backup_link"
ssh $remote_backup_server rm -rf ${most_recent_backup_link}
ssh $remote_backup_server cp -alv ${remote_backup_folder}/backup-${backup_folder_name}/ ${most_recent_backup_link}

Estou com um problema ao criar os hard links mais atuais no servidor de backup (linhas 53-57 no programa). Tudo funciona e o rsync copia apenas cerca de 1-2 MB de dados. Mas o processo de cópia de link físico usa cerca de <30MB de dados. Eu recebo uma enorme lista de arquivos que não mudaram e os únicos que mudaram são muito pequenos em tamanho. Normalmente, isso não é um problema, mas quando você faz backup a cada hora, o backup deve ser o menor possível.

Por exemplo, o último backup que fiz, o rsync transferiu 1.3MB. Mas o diretório de backup cresceu 35MB.

Por que os hard links estão ocupando muito espaço no disco rígido?

    
por mr_schlomo 16.01.2012 / 14:05

2 respostas

1

olhando para o seu código (no hub git), parece que você está criando um arquivo .sql.gz por backup. mesmo que haja apenas 1 ou 2MB de alterações, o backup será um novo arquivo no que diz respeito ao rsync, então ele desassociará o arquivo para criar um novo, já que agora são diferentes.

você provavelmente desejará fazer o backup dos diretórios mysql diretamente (o que envolverá parar o mysql enquanto você faz isso) para conseguir a economia de espaço que você deseja. Se você percorrer essa rota, provavelmente desejará executar um servidor escravo para fazer o backup, dessa forma, seu banco de dados permanecerá ativo o tempo todo e somente o servidor escravo será interrompido enquanto o backup é executado.

    
por 15.10.2013 / 13:52
-2

Você deve procurar em storeBackup (storeBackup.org). Ele faz backups duplicados usando hardlinks e é muito poderoso.

Tem mais recursos que o rsync para fazer backups com hardlink. Para backups por hora, você pode considerar a opção storeBackup "lateLinks", que adiará a criação de todos os hardlinks. Você pode fazer um backup diário com todos os hardlinks. (Ou você pode ligar todos os backups adiados mais tarde, se você optar por manter cada backup por hora.)

storeBackup também tem um recurso que permite decidir quais backups devem ser mantidos. Por exemplo, você poderia informá-lo para manter todos os backups de hora em hora apenas nas últimas 24 horas, e manter um backup dailly nos últimos 30 dias e manter o primeiro backup do mês além disso. Desta forma, você não perderá muito espaço.

    
por 29.03.2012 / 07:22