We've had problems with a production database having indexes getting
corrupt.  There are about 17 million records (500,000 new records a day)
in the table (MyISAM) and we run a delete script against it every night
to delete old data so the table doesn't get too big.  We are running
mysql 3.23.56 on Red Hat 7.2 using the JDBC driver.
 
Periodically we get a corrupt table with an error message like:
 
>From "mysqlcheck kenobi --check-only-changed"
 
kenobi.dg_analysis_reading
warning  : Table is marked as crashed
error    : Key in wrong position at page 1335379968
error    : Corrupt
 
Doing a repair quick or a repair on the table doesn't solve the
problem....  Doing more extensive repairs would take too long, I've
found dropping the indexes and recreating is the only reasonable way to
solve it.  But that's a pain and can take hours.....
 
My questions are:
 
1)       Is there any way we can utilize that page # in the error
message to fix the problem?
2)       Why does the table get corrupted in the first place (happens
about one a month)?
3)       Would upgrading to MySQL 4.0 help?
 
 
I'd really appreciate help on this one..... we are stumped!
 

Reply via email to