MySQL LOAD DATA LOCAL INFILE间歇性地工作

时间:2012-11-27 03:00:36

标签: mysql ubuntu-12.04 load-data-infile

操作系统:Ubuntu 12.04.1 LTS MySQL版本:5.5.28-0ubuntu0.12.04.2

当我尝试运行LOAD DATA LOCAL INFILE时,我收到错误1148(此MySQL版本不允许使用该命令) - 但仅在以下情况下

  • 当命令通过PHP wget cron作业运行时(大多数时候失败,每4次解决一次)
  • 在浏览器会话中通过PHP文件运行命令时(两次失败,通常第三次运行)

我看到如果脚本运行正常,并且很快就会运行它,它运行正常 - 但运行它后等待5分钟以上,它再次开始失败,直到我刷新它足够多次让它再次运行。我每次都需要从cron成功运行它。

我在my.conf中的[mysqld],[mysql]和[client]条目下添加了local-infile(不是local-infile = 1),然后重启服务器,无济于事。我也试过在[client]下输入loose-local-infile = 1,但没有快乐。

数据库文件夹已移至其他位置(/ media / Data / mysql_data),并由root拥有。

导入文件将下载到具有权限0644的本地方框。

以下是正在运行的命令:

LOAD DATA LOCAL INFILE
            "/var/www/'.$import_dir.$table.'.csv"
            INTO TABLE _PREP_'.$table.'
            FIELDS TERMINATED BY ","
            OPTIONALLY ENCLOSED BY "\""

.. $ import_dir和$ table是导入文件的路径和名称。

之前有其他人见过吗? 有没有我可以查看的日志,看看为什么它失败了? 怎么会间歇地失败?

这有点奇怪。为了记录,这是一个新的框,脚本总是表现得像这样。

所有帮助表示赞赏。 -PaulG

1 个答案:

答案 0 :(得分:0)

mysql_connect 添加其他标记 128 可以解决我的问题。 请查看详细信息mysql_connect