-1

私はphpスクリプトを使用しました

http://sourceforge.net/projects/dmoz2mysql/files/

dmoz データを MySQL テーブルにダウンロード、抽出、クリーニング、解析、および挿入します。structure.rdf の処理中に問題は発生しません。

しかし、content.rdf の解析中に、3200000 行を挿入した後に突然一時停止し、その後何も起こりません。約 1 時間待ってから強制終了する必要がありました。このスクリプトを Windows コマンド プロンプトで実行します。私は PHP を知らないので、この問題の原因を見つけることができません。

4

1 に答える 1

0

ここでは、役に立つと思われるトラブルシューティングのヒントをいくつか紹介します。

SHOW TABLE STATUS LIKE `table_name`;

これにより、入力しているテーブルに関する情報が表示されます。重要な部分は Max_data_length です。保存できるデータ量に制限がないかどうかを確認してください。これは、MyISAM テーブルでは一般的です。それを Data_length と比較します。一致する場合は、制限に達しています。これは、MAX_ROWS を使用して変更できます。MyISAM テーブルの一般的な制限は 4 GB のデータです。限界に達している場合は、次の 2 つのいずれかを行う必要があります。テーブルに InnoDB エンジンを使用するか、テーブルを変更します。

ALTER TABLE `table_name` MAX_ROWS=1000000000 AVG_ROW_LENGTH=nnn;

この回答に記載されている最初の STATUS クエリに記載されている Avg_row_length (またはそれ以上) を必ず使用してください。この数値がどこにあるべきかを評価するのに役立ちます。DB に既にデータがある場合、これはしばらくの間有効になる可能性があることに注意してください。それが役に立てば幸い。

ハッピーコーディング!

于 2010-03-09T00:12:12.903 に答える