5
我正在通过LOAD DATA将大文本文件加载到我的数据库中。该文件长约122,000行。更不用说,数据库被设计为在该表上的AFTER INSERT之后被触发。究竟情况是,查询开始执行,执行保持像15-20分钟,然后返回LOAD DATA LOCAL INFILE失去连接,我该如何解决超时问题?
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时51年1月5日,我的查询是
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';
看来DB-连接超时,我该如何解决这个问题?
您可能会考虑删除AFTER INSERT,而是在文件加载后批量执行其操作。 122K行,特别是只有几个数字列,每个列都是* tiny *,实际上最多只需要几秒钟...... – user359996 2011-09-28 00:56:25