- PR -

MysqlのMYI(インデックス)について

1
投稿者投稿内容
ふりふり
会議室デビュー日: 2007/03/13
投稿数: 11
投稿日時: 2008-08-20 13:56
Mysqlの質問で恐縮ですが、
解決できないので、ご質問させて頂きます。

誤ってエクスプローラー上で
MYIファイルのみ削除してしまった場合、
どのような方法で復元するのが良いでしょうか。

数ヶ月前にバックアップしたMYIファイルは残っているのですが、
このファイルをMYD、FRMのあるディレクトリにコピーして
Mysqlを再起動した場合、MYIは現状のMYDのデータに合わせて
インデックスを修復するのでしょうか

また、テーブルを一旦Dropして、SQLから
MYD、MYI、FRMを作り直すことを考えたのですが、
MYDのデータを一旦CSVにエクスポートして
その後、新しいテーブルに取り込みを行いたいのですが、
MYDデータからCSVを作成する方法が分かりません。

MYDデータを別のテーブルにインポートする方法などでも
良いのですが、ご存知の方がおられましたら、
何卒ご教授の程宜しくお願い致します。

Mysqlのバージョンは4.0.26です。
宜しくお願い致します。
うっちー
常連さん
会議室デビュー日: 2004/08/12
投稿数: 32
投稿日時: 2008-08-20 14:31
こんにちは。

以下のコマンドで .MYI ファイルが復旧しないでしょうか。
---
REPAIR TABLE tbl_name USE_FRM;
---

http://dev.mysql.com/doc/refman/5.1/ja/repair-table.html
---
REPAIR TABLE に有効な USE_FRM モードもあります。もし .MYI インデックス ファイルがなくなっていたり、そのヘッダが破損していたらこれを利用してください。このモードでは、MySQL は .frm ファイルからの情報を利用して .MYI ファイルを再作成します。
---
ふりふり
会議室デビュー日: 2007/03/13
投稿数: 11
投稿日時: 2008-08-20 14:56
うっちーさま

有難う御座います。
REPAIR TABLE によりMYIファイルを再生成することが
出来、データ内容も確認することができました。

まだまだ、勉強不足です。
本当に有難う御座いました。
1

スキルアップ/キャリアアップ(JOB@IT)