Previous Entry Share Next Entry
Ремонтируем Bacula
nitraf
Пришло мне уведомление от Bacula о том что резервная копия не создана. Полез разбираться и вижу:

15-May 09:26 backup-dir JobId 418: Fatal error: sql_create.c:1025 sql_create.c:1025 insert INSERT INTO File (FileIndex,JobId,PathId,FilenameId,LStat,MD5) VALUES (1,418,168,2220,'gB BKgmh IG0 B H2 H2 A 6Jdg BAA HRQ BPsfFm BPsfdD BPsfdD A A E','06bUubavM4tkC4SJEpa9iQ') failed:
Incorrect key file for table './bacula/File.MYI'; try to repair it


Останавливаем бакулу и смотрим что же произошло.

Оказалось что поломалась mysql база бакулы:
# mysqlcheck -c bacula -u root -p
bacula.File
warning  : Table is marked as crashed
warning  : 14 clients are using or haven't closed the table properly
error    : Record at pos: 1021440700 is not remove-marked
error    : record delete-link-chain corrupted
error    : Corrupt
bacula.Filename
warning  : Table is marked as crashed
warning  : 14 clients are using or haven't closed the table properly
warning  : Size of datafile is: 140245988       Should be: 140245456
error    : Record-count is not ok; is 2634928   Should be: 2634919
warning  : Found 2634928 key parts. Should be: 2634919
error    : Corrupt
bacula.Path
warning  : Table is marked as crashed
warning  : 14 clients are using or haven't closed the table properly
warning  : Size of datafile is: 39803288       Should be: 39803176
error    : Record-count is not ok; is 364425   Should be: 364424
warning  : Found 364425 key parts. Should be: 364424
error    : Corrupt

Запускаем авторемонт:
# mysqlcheck -u root -p --auto-repair -c -o bacula

Repairing tables
bacula.File
warning  : Number of rows changed from 19727648 to 19805013
status   : OK
bacula.Filename
warning  : Number of rows changed from 2634919 to 2634928
status   : OK
bacula.Path
warning  : Number of rows changed from 364424 to 364425
status   : OK

Запускаем bacula обратно и перезапускаем job из последних. 

Ура!!! Резервная копия создана.

p.s. 
http://www.mail-archive.com/bacula-users@lists.sourceforge.net/msg38437.html
http://www.thegeekstuff.com/2011/12/mysqlcheck/

?

Log in