crash - can anyone help

Permalink
I've have this crash message.Its stopping me from publishing changes. What do I do to repair it. I'm a complete novice in this matter.

mysql error: [145: Table './jackdaw/PageSearchIndex' is marked as crashed and should be repaired] in EXECUTE("UPDATE PageSearchIndex SET cRequiresReindex=1 WHERE cID=133")

Cheers

 
ronyDdeveloper replied on at Permalink Reply
ronyDdeveloper
I've faced this kinds errors previously. Its something that you cannot do anything with that crashed table. So the better way to recover is just have a full backup of the entire database except that table. Then create a new database & import that backup. Then try to upload that crashed table into the new database from any of your local backup.

Hope this helps. This is the way that I've followed to recover.
Note: I was trying to recover the table from mysql table recover tools but nothing happens.

Rony
jsummerfield replied on at Permalink Reply
Thanks Rony, I'll try that!
VPenkov replied on at Permalink Reply
VPenkov
That's really not necessary.
Just run mysql through SSH or other command line interface, then SELECT DATABASE your-database-name;

For example, on my local backup server, my procedure would be:
mysql -uroot -p
<then it's gonna ask me for a password>
<after that, I'm gonna enter my password and press enter>
then I would type
SELECT DATABASE concrete5;

aaaand finally execute
REPAIR TABLE `PageSearchIndex';

So, to sum it up:
mysql -uroot -p
SELECT DATABASE concrete5;
REPAIR TABLE `PageSearchIndex';
That's about it.
If you use a shared hosting and/or don't have the means to execute such a command, have your hosting provider do it.
ronyDdeveloper replied on at Permalink Reply
ronyDdeveloper
I was trying to do that anyway in my case but not succeeded. It doesn't recover the table. So I suggest him an alternative way.

Rony
VPenkov replied on at Permalink Reply
VPenkov
Should have tried REPAIR TABLE tbl_name USE_FRM;

The USE_FRM statement is important sometimes. It acts very differently (pretty much does truncate->restore automatically), so you should try the first method before the USE_FRM method.
jsummerfield replied on at Permalink Reply
OK thanks. I'll check this approach first, remembering obviously that I've never looked at a MySql database before!