MySQL加载数据infile作为crn的php脚本

时间:2013-05-31 16:18:30

标签: php mysql csv cron

好的,我有这个sql:

LOAD DATA LOCAL INFILE 'path/file.csv' INTO TABLE episodes FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (title, link, date_aired, season, series_id)

当我在phpmyadmin中运行它时工作正常。它可以非常快速地将csv中的记录加载到表中。因此,我需要每天做几次这样的事情,我打算从中做出一个cron工作。所以只是为了测试它我把这个sql放到php脚本中所以我可以使用cron执行它。但这是问题所在。我自己运行脚本,手动检查它是否有效。实际上它可以将数据插入到表中,但是脚本仍然在运行(页面仍在加载)并且它完成了它必须做的事情。所以我离开了几分钟,但它仍在加载。所以对我来说它似乎进入了一种无限循环,但脚本中没有循环。这是脚本代码的重要部分:

$sql="LOAD DATA LOCAL INFILE 'path/file.csv' IGNORE INTO TABLE episodes FIELDS TERMINATED BY ',' LINES TERMINATED BY '\\n' (title, link, date_aired, season, series_id)";
$query = mysql_query( $sql, $conn );

还要注意我确实正确地逃避了所有字符并且查询确实有效,但是页面仍在加载。这会干扰我的其他cron工作。除了设置一定的超时值之外,我怎么能阻止它呢。

1 个答案:

答案 0 :(得分:0)

脚本现在工作正常,查询刚刚以某种方式纠缠在上一个循环中。