HiveBrain v1.2.0
Get Started
← Back to all entries
patternsqlMinor

InnoDB "corruption"

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
innodbcorruptionstackoverflow

Problem

I use:

  • 5.1.63-0ubuntu0.11.10.1



  • Apache/2.2.20 (Ubuntu)



  • MySQL client version: 5.1.63



The system is continuously displaying the following error during reading data from a MySQL database:

InnoDB: Database page corruption on disk or a failed
InnoDB: file read of page 387794.


After rebooting the system, I can regain access to the database and read
the "problematic" data without any problem for a few minutes or hours until
the same problem re-appears (for different data read attempts).

Any idea on the source of the problem?

  • I have checked the HDD with S.M.A.R.T utility and I could not find any problem.



  • I deactivate AppArmor without any result.



  • I also tried SQL_NO_CACHE option in the query without any result



```
120918 13:07:06 InnoDB: Page checksum 3504102879, prior-to-4.0.14-form checksum 1216630776
InnoDB: stored checksum 2100325079, prior-to-4.0.14-form stored checksum 1216630776
InnoDB: Page lsn 2 1168743501, low 4 bytes of lsn at page end 1168743501
InnoDB: Page number (if stored to page already) 387794,
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 0 175
InnoDB: (index "PRIMARY" of table "OII"."dataset_cs_1")
InnoDB: Database page corruption on disk or a failed
InnoDB: file read of page 387794.
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 http://dev.mysql.com/doc/refman/5.1/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
InnoDB: Ending processing because of a corrupt database page.
120918 13:07:07 [Note] Plugin 'FEDERATED' is disab

Solution

Rebooting temporarily clears the problem, and the error moves around... this strongly points to defective system RAM causing corruption of the OS cache.

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.


You likely already know this part, but with Ubuntu, on startup, select "Memory test (memtest86+)" to verify. If you don't normally see the GRUB boot menu, you should be able to hold left-shift as it first starts up.

Code Snippets

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.

Context

StackExchange Database Administrators Q#24477, answer score: 4

Revisions (0)

No revisions yet.