0

私はWindows2008にMySql5.1.13データベースを持っていましたが、ある晴れた日にサーバー[300以上のデータベース]のバックアップを取りました。古いバージョンをアンインストールし、5.5バージョンのMYSqlをインストールします。データフォルダをMysql5.5データの場所にコピーして戻し、すべてのデータベースを取得しましたが、後で、約250のデータベースが場所に存在していても、PHPmyadminにテーブルが表示されないことに気付きました。これらのデータベースのいくつかで「テーブルの表示」を実行しようとすると、テーブル名が表示されます[したがって、tablename.frmファイルが終了します]。

言うまでもなく、Innodbであるすべてのテーブルが欠落しているのは1つだけです。どうすれば簡単に元に戻すことができますか。各データベースのバックアップがありますが、250個のSQLファイルを実行するのは簡単ではありません:)。

4

1 に答える 1

0

innodbエンジンは、データファイルを格納する独自の個別のフォルダーを持つことができます。MySQLのマニュアルによると、InnoDBはデフォルトでMySQLデータディレクトリにテーブルスペースファイルを作成します。http://dev.mysql.com/doc/refman/5.0/en/innodb-configuration.htmlを参照してください。

通常、パフォーマンスを向上させるためにテーブルを異なるドライブに分割するため、InnoDBテーブルが別のドライブまたはフォルダーに配置されるように構成されているシナリオが発生する可能性があります。お持ちの場合は、前のMySQL構成ファイルを確認し、次の行を確認してください:innodb_data_home_dir = / ibdata

これは、ファイルがどこにあるかを示します。私はこれを試していませんが、これが当てはまる場合は、現在の構成が古いinnodbの場所を指すことができるはずです。それがうまくいかない場合は、復元するのが最善の策だと思います。

幸運を!

于 2012-12-13T06:38:55.470 に答える