2

ケースは次のとおりです。

コンピューターがハッキングされた後、私たちはすべてのデータを他のコンピューターにバックアップしようと急いでいます。

その結果、mysqlデータベースはsqlステートメントとしてバックアップされません。

私たちが行ったことは、Cドライブ内のすべての物理ファイル/フォルダーを新しいコンピューターにバックアップすることです。

例えば:

C:\ Program Files \ MySQL \ MySQL Server 4.1 \ data

この場合、mysqlのすべてのデータは読み取り不可能なファイル内にあります。内部データフォルダは、ib_logfile0、ib_logfile1などのファイルで構成されますが、ib_data1は含まれません。すべてのデータベースのテーブル構造形式は、それぞれのフォルダ内にあります。(一部のフォルダーには.frm、.optがあります)(他のフォルダーには.frm、.myd、.myiがあります)

新しいコンピューターのデータベースからデータを取得するにはどうすればよいですか?

新しいコンピューターに同じmysqlバージョン(4.1)をインストールしてから、データフォルダー内のすべてのバックアップファイルを新しいコンピューターのこのmysqlに置き換えようとしました。次に、mysqlサービスを再起動します。

再起動すると失敗します:ローカルコンピュータでmysqlサービスを開始できませんでした。エラー1067:プロセスが予期せず終了しました。

表示されるエラーログ:

InnoDB: The first specified data file .\ibdata1 did not exist:
InnoDB: a new database to be created!
090930 10:24:49  InnoDB: Setting file .\ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Error: log file .\ib_logfile0 is of different size 0 87031808 bytes
InnoDB: than specified in the .cnf file 0 25165824 bytes!
090930 10:24:49 [ERROR] Can't init databases
090930 10:24:49 [ERROR] Aborting

090930 10:24:49 [Note] C:\Program Files\MySQL\MySQL Server 4.1\bin\mysqld-nt: Shutdown complete
4

3 に答える 3

0

何が問題なのかを確認するには、データフォルダのmysql.errログを確認する必要があります。

mysqlサービスは、最初にインストールしたときに正しく開始されましたか?

Windowsを使用しているように見えるので、ファイルをコピーするのではなく移動したと推測します。Windowsでファイルを移動すると、ファイルはアクセス許可を保持します。コピーすると、フォルダーからアクセス許可が継承されます。したがって、適切な権限があることを確認してください。

于 2009-09-29T18:37:30.310 に答える
0

エラーログは、innodb構成がinnodbファイルと一致しないことを示しています。古いサーバーの構成ファイルを調べて、mysqlがinnodbファイルを格納するように構成されている場所を特定する必要があります。次に、それらのファイルを見つけて、新しいサーバーにコピーします。また、innodb構成設定を古いサーバーから正確にコピーして、新しいサーバーに適用する必要があります。

于 2009-09-30T16:58:01.130 に答える
0

my.iniのinnodb_log_file_sizeが以前と同じではなかったようです。

データフォルダー内のib_logfile0ファイルサイズを確認してください。102,400KBの場合は、innodb_log_file_size=100Mになります。

innodb_log_file_size = 83M(現在は24Mに設定されています)

誰かがインストーラーを使用してmysqlインストールを「修復」したときに、この問題が発生しました。

楽しんで。

于 2010-05-24T09:32:45.363 に答える