【问题标题】:Laravel command not working as cronLaravel 命令不能作为 cron 工作
【发布时间】:2016-09-19 05:51:41
【问题描述】:

我设置了以下命令用于备份

db:backup --database=mysql --destination=s3 --destinationPath=date +\test/%Y%m%d%H%M%S.sql--compression=gzip

代码可以作为命令正常工作

当从调度程序运行 local.ERROR: exception 'BackupManager\ShellProcessing\ShellProcessFailed' with message 'sh: mysqldump: command not found 时失败。

任何建议。

【问题讨论】:

  • 看看这个:stackoverflow.com/questions/2135478/… ,因为我认为它与通过crontab运行时不同的环境问题有关
  • @Amarnasan 可能是对的,但请同时发布您的命令,以便更容易判断。
  • 嗨@Amarnasan,我的调度程序工作正常,因为我有其他工作正常的调度程序命令。关于备份命令,来自 laravel 备份插件github.com/backup-manager/laravel
  • 似乎是path 问题。尝试在脚本中指定 mysqldump 完整路径:类似于 /usr/bin/mysqldump

标签: php mysql laravel cron backup


【解决方案1】:

是的,想通了细节。

作为 cron 运行时,shell 路径未初始化

解决方案是创建为 shell 脚本并从 cron 调用它,并在 cron 之前启动 bash_profile

crontab

* * * * * bash /path/cron.sh

cron.sh

. .bash_profile
<cron command>

【讨论】:

    猜你喜欢
    • 2020-11-06
    • 2020-02-15
    • 2018-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-14
    • 1970-01-01
    相关资源
    最近更新 更多