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

mysqldump-cronjob creates a new php-file, each time it is called

我有一个看起来像这样的 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');
   }
  }

您调用 php 文件的方式有误。

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

which php

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

在您的 cron 选项卡中添加以下行:

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

根据您的要求使用 *

php 文件应该在服务器上。