Os backups do Bacula falham com erro de chave primária duplicado

1

Todos os meus backups do Bacula começaram a falhar no fim de semana com o seguinte erro do MySQL:

Fatal error: sql_create.c:XXX Fill File table Query failed: INSERT INTO File (FileIndex, JobId, PathId, FilenameId, LStat, MD5)SELECT batch.FileIndex, batch.JobId, Path.PathId, Filename.FilenameId,batch.LStat, batch.MD5 FROM batch JOIN Path ON (batch.Path = Path.Path) JOIN Filename ON (batch.Name = Filename.Name): ERR=Duplicate entry '375086058' for key 'PRIMARY'

Foi bastante repentino: parece ter acontecido entre 3h e 3h da manhã de hoje, sem outras pistas sobre o que aconteceu.

Uma rápida olhada no banco de dados concorda que 375086058 é o campo FileId numerado mais alto (que é o Índice Principal da Tabela de Arquivos), mas não sei o que fazer para corrigi-lo sem corromper meu banco de dados Bacula.

Alguma idéia?

    
por Shannon A. 04.02.2014 / 01:19

1 resposta

1

Eu olhei para o status da tabela e verifiquei que o campo Fileid era um incremento automático e que ele estava preso em 375086058, que é o número que agora diz ser duplicado. Eu recebi essa informação com os dois comandos a seguir:

mysql> describe File;
mysql> show table status where name='File';

Para resolver esse problema, atualizei o auto_increment para o * next (number:

mysql> ALTER TABLE File AUTO_INCREMENT=375086059;

Isso levou cerca de 10 minutos devido ao tamanho da tabela. Parece ter resolvido o problema.

    
por 04.02.2014 / 20:55