Incorrect key file for table 'widgets'; try to repair it
これは、MySQLが既存の(非常に大きな)テーブルに新しいインデックスを適用しようとしたときに表示されるエラーメッセージです。もちろん、私がそれを修復しようとするというエラーメッセージの提案に従うとき:
mysql> repair table widgets;
+-------------------+--------+----------+---------------------------------------------------------+
| Table | Op | Msg_type | Msg_text |
+-------------------+--------+----------+---------------------------------------------------------+
| tedsdb.widgets | repair | note | The storage engine for the table doesn't support repair |
+-------------------+--------+----------+---------------------------------------------------------+
1 row in set (0.00 sec)
ここでの私の最善の行動は何ですか(いじくり回す前に明らかな完全バックアップに続いて)?
更新:同じスキーマの新しいテーブル(MyISAM)を作成し、すべてのレコードをコピーし(selectに挿入)、新しいテーブル(InnoDB)のエンジンを変更し、破損したテーブルの名前を変更し、新しいテーブルの名前を変更してから、もう一度、同じエラーが発生しました。