5

LOAD DATA を使用して、大きなテキスト ファイルをデータベースにロードしています。ファイルの長さは約 122,000 行です。言うまでもなく、データベースはそのテーブルの AFTER INSERT でトリガーされるように設計されています。正確には、クエリの実行が開始され、15〜20分間実行され続けてから返されるということです

Error Code: 2013
Lost connection to MySQL server during query

それから

Error Code: 2006
MySQL server has gone away

エラーが表示された後、クエリを再実行するとすぐに終了します。

0 row(s) affected
Records: 122574  Deleted: 0  Skipped: 122574  Warnings: 0

そして、テーブルは実際にインポートされます。

select * from quote
122574 row(s) returned

Mac OS X 10.6.4 で mysqld 5.1.51 を実行していますが、クエリは

    LOAD data local INFILE 
        '/Users/ash/quotes/data.txt' 
        INTO TABLE quote fields 
        TERMINATED BY ',' ENCLOSED BY '' LINES TERMINATED BY '\r\n' 
          (quote.date,quote.ticker,quote.open,
           quote.high,quote.low,quote.close,quote.volume,@market) 
          SET market = 'sp';

データベース接続がタイムアウトしているようですが、どうすれば修正できますか?

4

1 に答える 1

0

mysqldの起動時にwait_timeout変数を設定することにより、制限時間を変更できます。MySQLのドキュメントを参照してください

于 2011-09-26T08:25:26.360 に答える