クラッシュとしてマークされているmysqlテーブルからいくつかのデータを取得しようとしています。マシンの復元されたバックアップに取り組んでいるので、何も心配する必要はありません。
テーブルをmysqldumpしようとすると(FYI使用している--whereを使用して、必要なレコードを指定します)、エラーが発生します。
mysqldump: Got error: 144: Table './[db]/[table]' is marked as crashed and last (automatic?) repair failed when doing LOCK TABLES
--lock-tables = falseを使用すると、同じエラーが発生します(ただし、SHOW FIELDSを実行すると失敗します)。
テーブルから最初のレコードを選択しようとすると、同じエラーが発生します。
CHECK TABLE [table]を実行すると、次の警告/エラーが発生します。
warning | 1 client is using or hasn't closed the table properly |
warning | Size of indexfile is: 1991678976 Should be: 1024 |
error | Record-count is not ok; is 30030697 Should be: 0 |
warning | Found 141967876 deleted space. Should be 0 |
warning | Found 3101578 deleted blocks Should be: 0 |
warning | Found 34721783 key parts. Should be: 0 |
error | Corrupt |
これは、テーブルを修復すると、すべてのデータが失われることを意味します。そこに30030697レコードがあるはずです...
このデータにアクセスする方法はありますか?