web-dev-qa-db-ja.com

#1036-テーブル 'pma__recent'はphpMyAdmin / xampp / Windowsでのみ読み取られる

Xampp 5.6.15を搭載したlocalhostに約40のデータベースがあります。それらのいくつかはMyISAMを使用し、他はInnoDBを使用しています。

データベースが破損しており、phpMyAdminが永続的にエラーメッセージを出力していました。私は、stackexchangeのWebサイトで提案されている多くのことを試しましたが、ほぼ正常に戻ることができました。

ただし、テーブル名をクリックすると、phpMyAdminに次のメッセージが表示されます。

#1036 - Table 'pma__recent' is read only

私の読書から、これはinnodb_force_recovery = 1xampp\mysql\bin\my.iniファイル。

残念ながら、コメントアウトするとinnodb_force_recovery、おそらくデータベースにまだエラーがあるため、MySQLを起動できません。

私は呼びました mysqlcheck -c -u root -p --all-databases端末から。ログには、一部のテーブルがエンジンに存在しないことが示されています(存在する必要があります)。

通常に戻るにはどうすればよいですか?

2
OuzoPower

これは、問題を解決するための私の継続的な試みの草案です。

私が提案する最初のステップは次のとおりです。

  1. MySQLサーバーを停止します
  2. データベースフォルダー全体をバックアップしますmysql/data
  3. サーバーを再起動します
  4. MySQLデータベースを個別にチェックして、考えられるエラーを確認します:mysqlcheck -u root -p some_database_name
1
OuzoPower