- ベストアンサー
Mysql4.0からMysql5.0へデータ移動法
- MySQL4.0からMySQL5.0へのデータ移動方法について調査した結果、phpmyadmin2.11.11のインポート機能を使用してデータを移行する方法が良いとわかりました。
- 移行時には注意点があります。まず、ファイルの文字セットはutf8に設定し、部分インポートの設定はせず、ファイル形式はSQLを選択します。エンコーディングはnonを選択し、全角カナ変換は行いません。
- インポート時には選択項目を誤るとデータが壊れる可能性があります。正しくインポートできない場合、他のファイルも壊れる可能性があるため注意が必要です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
FRM/MYD/MYIファイル: これらは、MyISAM形式table 用バイナリファイルで、4.0と5.0で形式に違いはないようです。 そのまま、MySQL5.0や5.1のdata 用ディレクトリーに、サブディレクトリー(これがMySQLのデータベース名になる)作るか、既にあるtestディレクトリーにコピーして入れてしまえば、root管理者は、そのtableを見れます。 私のwindowsXP では4.0と5.0の2つのversionが入ってるので、table用ファイルだけ別のversionへコピーしてみたら、読めましたし、編集もできました。 MySQLサーバーは一旦停止してから、作業してくださいね。コピー先に同名ファイルがある場合は、別のディレクトリーを作成するのがよいでしょう。 元のMySQLが入っていたのとOSが異なっても大丈夫かは、解りませんが、ファイルのアクセス権設定のないwindowsでなら、いけそうな気がしますけど。ローカルPCがwindowsなら、xamppとか入れて試してみる価値はあるかと思います。
その他の回答 (1)
- nora1962
- ベストアンサー率60% (431/717)
確実そうなのは別のPCにmysql4の環境を構築し、バックアプしているファイルなどをコピー。これでデータベースを認識してくれたら、mysqldumpコマンドでテキスト出力。 mysqldump -u ユーザー名 -pパスワード データベース名 > テキストファイル名 これでテキストファイルができたら、本番環境に持ってきて mysql -u ユーザー名 -pパスワード < テキストファイル名 構築したmysql4環境でDBを認識出来ないとなるとほぼ復旧は困難。
お礼
回答ありがとうございます。すごく助かります! やはり一度MySQL4.0の環境が必要なのですねぇ・・・ 所持しているサーバーは全てMySQL5.0がインストールされており、既に他の複数人のデータベースが稼働中なのでMySQLを4.0にすることもできず、空いてるサーバーも無いので行き詰り中です。 ※レンタルサーバーで4.0提供している所があれば良かったのですが、Ver古すぎて提供している所は見つけられませんでした。 また教えていただいたダンプのコマンドですが・・・ mysqldump -u ユーザー名 -pパスワード データベース名 > テキストファイル名 これは(FRM/MYD/MYIファイル)のデータではなく「***.sql」のデータってことですよね? 生のデータでも全く問題なく移動できるものと思い、MySQL4.0が入ったサーバーを廃止する際、phpMyadminなどでエクスポートなど一切しておりませんでした。 MySQL4.0の環境を使わずに何か良い方法はないでしょうか?
お礼
お礼遅くなりすみません。 回答ありがとうございます。 教えていただきました情報はかなり有効なものです! 是非試したいと思いますが、残念なことに使っているサーバーが共用サーバーなので一時停止することができない状態でした(他の人が使っているので) 断念して一から作り直すことにしました。 でも機会があれば是非試してみたいと思います! 有力な回答どうもありがとうございました!!