gpt4 book ai didi

php - innobackupex - 从命令行获取输出

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:23:03 25 4
gpt4 key购买 nike

我正在运行 innobackupex 脚本,但我不知道如何从脚本中获取输出?我需要最后一行来检查脚本是成功还是失败..

$output = shell_exec('innobackupex --user=root --password=xxx --databases="test" --stream=tar ./ | gzip -c -1 > /var/bak/2013-08-09-1431_mysql.tar.gz')

脚本正常运行,备份 zip 已创建,但 $output 为空

更新

现在命令没有通过管道传输到 gzip,但仍然没有输出

$syntax = 'innobackupex --user='.$mysql_user.' --password='.$mysql_pass.' --databases="'.$mysql_db.'" /var/bak';
$output = shell_exec($syntax);

最佳答案

我不想在评论中踩到@RudyVisser 的答案,但这是另一个解决方案:

$syntax = 'innobackupex --user="'.$mysql_user.'" --password="'.$mysql_pass.'"
--databases="'.$mysql_db.'" --stream=tar ./ | gzip -c -1
> /var/bak/2013-08-09-1431_mysql.tar.gz ; echo $?')

$exit_status = shell_exec($syntax);

命令中的回显应该报告innobackupex的退出状态,如果备份成功则为0,如果有错误则为非零。

http://www.percona.com/doc/percona-xtrabackup/2.1/xtrabackup_bin/xtrabackup_exit_codes.html

PS:Percona XtraBackup 也有一个--compress 选项,它使用以非常快着称的qpress 算法。我提到这一点是因为我注意到您使用 gzip -1 大概是为了获得更好的性能。

关于php - innobackupex - 从命令行获取输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18149243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com