我正在使用cron使用的bash脚本(sync.sh),它应该将文件同步到MySQL数据库。它的工作原理是从自动上传的位置复制文件,通过调用调用其他MySQL内部存储脚本的SQL脚本来解析它,最后通过电子邮件将报告文本文件作为附件发送。
但是,似乎某些东西没有工作,因为MySQL数据库没有任何反应。执行所有其他命令(第一行和最后一行:复制初始文件和电子邮件发送)。 单独运行时的MySQL命令工作正常。 服务器是Ubuntu 16.04。 Cron作业以root用户身份运行,脚本是root用户的crontab的一部分。
这是脚本:
Fruit::find(1, ['id', 'title']);
答案 0 :(得分:2)
cron将使用非常剥离的环境执行脚本。您可能希望将mysql命令的完整路径添加到cron脚本
您可以通过
找到完整路径which mysql
在提示符下, 或者您可以添加扩展路径到cron调用
1 2 * * * PATH=/usr/local/bin:$PATH scriptname