mysqldump-cronjob每次调用时都会创建一个新的php文件

时间:2016-01-19 11:14:16

标签: php cron crontab cron-task

我有一个看起来像这样的cronjob:

mysqldump -u XXX -pXXX XXX | gzip -9 > /data/web/xyz123/html/temporary/backup-$(date +%Y%m%d).sql.gz

每次调用cronjob时,都会生成.sql.gz文件。一切都很好。但我知道,每次调用cronjob时,cronjob都会在根目录中生成一个名为crontab.php.1,crontab.php.2,crontab.php.3的文件。

crontab.php中的相关代码是:

  if(!empty($data['set_backup_email'])){
   if(sendmail($data['set_backup_email'], 'Backup '.date('Y-m-d'), 'Im Anhang befindet sich das Backup vom '.$day[date('N')].', '.date('d.m.Y').'.', $file, 'backup@abc123.xyz1')){
    protocol(61);
    unlink($file);
   }else{
    protocol(62);
    send2admin('Das Datenbank-Backup konnte nicht zugestellt werden');
   }
  }

1 个答案:

答案 0 :(得分:1)

你是以错误的方式调用php文件。

在您的Linux服务器上运行此命令

which php

它将为您提供php的路径,它将类似于/to/path/php

将您的cron标签中的行添加为:

* * * * * /to/path/php /filepath/crontab.php

根据您的要求使用*

php文件应该在服务器上。