When I upgraded my ubuntu server to a more recent mysql version, the mysql server didn't come up anymore.
The error.log said:
InnoDB: Log scan progressed past the checkpoint lsn 0 726937418
110103 23:55:57 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: Error: tried to read 65536 bytes at offset 0 4220416.
InnoDB: Was only able to read 23040.
InnoDB: Fatal error: cannot read from file. OS error number 17.
110103 23:55:57 InnoDB: Assertion failure in thread 140594203866912 in file ../../../storage/innobase/os/os0file.c line 2291
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html
InnoDB: about forcing recovery.
The deamon.log only stated:
Jan 3 23:55:57 myhostname init: mysql post-start process (28722) terminated with status 1
On the web I found the hint to add skip-innodb, which didn't help, because I needed innodb for this project.
The solution was (thanks
sr):
# mv /var/lib/mysql/ib* /root/
This moved the inno db index files and after that I restarted mysql and everything was fine again.
# restart mysql