mysql

Uszkodzona baza danych, mysqld robi crash co minutę, safe go podnosi.

InnoDB: End of page dump
131225 6:55:43 InnoDB: Page checksum 3305108872, prior-to-4.0.14-form checksum 575979139
InnoDB: stored checksum 242663140, prior-to-4.0.14-form stored checksum 575979139
InnoDB: Page lsn 519 184741209, low 4 bytes of lsn at page end 184741209
InnoDB: Page number (if stored to page already) 1527359,
InnoDB: space id (if created with >= MySQL-4.1.1 and stored already) 0
InnoDB: Page may be an index page where index id is 2019052338 1668635222
InnoDB: Database page corruption on disk or a failed
InnoDB: file read of page 1527359.
InnoDB: You may have to recover from a backup.
InnoDB: It is also possible that your operating
InnoDB: system has corrupted its own file cache
InnoDB: and rebooting your computer removes the
InnoDB: error.
InnoDB: If the corrupt page is an index page
InnoDB: you can also try to fix the corruption
InnoDB: by dumping, dropping, and reimporting
InnoDB: the corrupt table. You can use CHECK
InnoDB: TABLE to scan your table for corruption.
InnoDB: See also InnoDB: http://dev.mysql.com/doc/refman/5.0/en/forcing-recovery.html
InnoDB: about forcing recovery.
InnoDB: Ending processing because of a corrupt database page.
InnoDB: Log scan progressed past the checkpoint lsn 525 3009343428
131225 6:55:43 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files…
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer…
InnoDB: Doing recovery: scanned up to log sequence number 525 3009358835

Aby problem naprawić, trzeba skasować tabelę, która powoduje problem i odtworzyć ją na nowo.
Nie da się jednak zrobić dumpa tabeli, bo mysql umiera. Aby nie znikał mimo błędu trzeba dopisać innodb_force_recovery=1 w my.cfg na czas wykonania dumpa (w tym czasie nie da się modyfikować zawartości bazy, działa tylko select).