0

基本的に膨大な量のデータをデータベースにロードする次のクエリがあります。

LOAD data local INFILE 
    '/Users/Masters/Model/quotes/sp500hst-1.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 = 'sp500';

ファイル sp500hst-1.txt のスニペットは次のとおりです。

20090821,A,25.6,25.61,25.22,25.55,34758
20090824,A,25.64,25.74,25.33,25.5,22247
20090825,A,25.5,25.7,25.225,25.34,30891
20090826,A,25.32,25.6425,25.145,25.48,33334

ファイルの長さは約150,000行で、「AFTER INSERT」トリガープロシージャ、テーブルのプライマリインデックス以外の2つのインデックスがありますquote

何が起こるかというと、クエリが 15 分間実行され続け、「サーバーへの接続が失われました」が返されます。クエリを再度実行すると、影響を受ける行の数で即座に成功が返されます。

時間がかかりすぎる理由は理解できますが、解決する必要があるのは「サーバーへの接続が失われた」不具合です。

4

1 に答える 1

1

このページを見てください-- この問題に対処するための提案のリストがあります。

于 2010-11-18T00:57:07.383 に答える