我正在尝试转储mysql数据库(备份)。我有以下脚本。 passthru工作并将文件下载到客户端,但我还希望它在服务器的/ backup /文件夹中保存备份.gz文件的副本。 我无法让它发挥作用。 .gz文件下载到用户,但不会放入/ backup文件夹。
$filename = $thismoment . "_" . $_GET["t"] . ".gz";
$mime = "application/x-gzip";
system('mysqldump -u $DBUSER --password=$DBPASSWD $DATABASE | gzip > /backup/' . $filename);
header( "Content-Type: " . $mime );
header( 'Content-Disposition: attachment; filename="' . $filename . '"' );
$cmd = "mysqldump -u $DBUSER --password=$DBPASSWD $DATABASE | gzip --best";
passthru( $cmd );
exit(0);
答案 0 :(得分:0)
通过将两个命令合并为一个并指定mysqldump的完整路径(没有.exe ...)来管理它的工作原理
$filename = $thismoment . "_" . $_GET["t"] . ".gz";
$mime = "application/x-gzip";
header( "Content-Type: " . $mime );
header( 'Content-Disposition: attachment; filename="' . $filename . '"' );
$cmd = 'D:\Web\XAMPP\mysql\bin\mysqldump --opt -u '.$_user.' -p'.$_pass.' '.$_db.' | gzip --best > backup/' . $filename;
passthru( $cmd );
exit(0);
感谢您的帮助!你指出我正确的方向。