【发布时间】:2012-01-05 14:45:56
【问题描述】:
我正在使用 mysqldump 来备份我的 mysql 数据库并将其置于 cron 作业下。我想测试它的成功或失败,并希望它在 cron 作业电子邮件中回显成功或失败消息但失败了?请帮帮我...
要传递什么命令?我这样做了,但失败了:
在我的 php 备份脚本中,我包括:
$testvar = '
if [ "$?" -eq 0 ]
then
echo "Success"
else
echo "Mysqldump encountered a problem look in database.err for information"
fi
';
exec($testvar);
我的服务器说:文件意外结束
脚本:
$creatBackup = 'mysqldump -uabc -p password mydb > myfile '.
'if [ "$?" -eq 0 ]; then
eho "Success"
else echo "Mysqldump encountered a problem"
fi
';
$BackupMessage = exec($creatBackup);
echo $BackupMessage;
【问题讨论】:
-
这在我看来就像一个 shell 错误。您能否发布脚本以及您通过 cron 调用它的方式。
-
@Radix - 先生,我已经发布了脚本
-
你应该发布所有的php备份脚本。您发布的这一行不包括 mysqldump 命令。您应该在同一个 exec() php 命令中调用 dump ant 测试。
-
假设您正在通过 cron 运行 php 脚本,您是否在文件顶部包含了带有 php 可执行文件路径的 hash bang?另外,我注意到您将 mysql 用户放在 -u 旁边,并在 -p 和密码之间放置一个空格 - 它应该是相反的,'mysqldump -u abc -ppassword。