我有一个每天从cron作业运行的php脚本,解压缩包含文本数据的大型压缩文件,并将其保存回mySQL数据库。PHP 5.6 - 这个MySQL版本不允许使用命令
zip文件被更新并每天上传到FTP文件所在的FTP站点。
这有所有几个月的工作100%的罚款,但我认为最近我们的托管将自己升级到PHP 5.6版本,现在我得到这些错误:
Error populating table: The used command is not allowed with this MySQL version
用于填充MySQL表的代码是这样的:
$loadfile = "LOAD DATA LOCAL INFILE '$textfile' INTO TABLE $tablename FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n' IGNORE 1 LINES";
mysqli_query($conn, $loadfile)
我真的不明白的是,有时它似乎运行良好,有时它失败!也许每周一次它现在可以正常工作,并且在所有其他日子都会失败。
在PHP中有什么改变,意味着上面的代码现在是错误的?
任何人都可以帮助上述代码,让它在PHP 5.6上可靠地运行吗?
只是一个想法,有你在,是造成打嗝 – RiggsFolly
检查你的MySQL版本的一些微妙的方式负载的变化数据。要执行echo'$ loadfile',然后尝试从cmd或phpmyadmin运行mysql中的原始查询。这与php版本无关。 –
这个问题不是重复的。我已检查load data命令是否已启用。数据格式没有改变。我知道我们的主机(1&1)最近更新了我们的PHP版本,但我不知道mysql版本是否已更改。 – Richard