ibdata1ファイルには、Mysqlデータベースに関するテーブルスペース情報とその他のメタデータが含まれています。
innodb_force_recovery = 1
を使用してみてください innodb_force_recovery = 6
までずっと それで問題が解決するかどうかを確認します。 my.cnf
でこれを変更してみてください (my.ini
Windowsの場合)ファイルを作成してから、mysqlサーバーの再起動を再試行してください。
リカバリフラグを使用してMysqlを起動できる場合、データベースは読み取り専用モードになります。データのmysqldumpを実行し、mysqlを停止し、新たに再インストールし、データベースを再作成して、データをインポートし直す必要があります。
innodbリカバリの詳細については、次のリンクを参照してください dev .mysql 。
Linuxを使用している場合...
もう1つのより複雑なオプションは、perconaリカバリツールキットを使用することです。これにより、テーブルスペースが再調整されます。ただし、経験上、ナビゲートするのは少し難しいですし、初心者の場合は実装に少し時間がかかります。
ただし、ツールキットの作成者であるakuzminskyは、ツールキットに大幅な改善を加えたと述べています。
ダウンロードツールキットへのリンク
akuzinskyのウェブサイトへのリンク
そのデータがミッションクリティカルでない限り、2週間前のバックアップに戻るだけです。このデータの回復に費やす時間と労力は、メリットを損なう可能性があります。