我正在尝试转储mysql数据库(备份)。我有下面的脚本。passthru工作,它将文件下载到客户端,但我也希望它将备份.gz文件的副本保存在服务器上/backup/文件夹中。我不能让它起作用。.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);
发布于 2017-05-21 02:57:10
通过将这两个命令组合成一个并指定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);
谢谢你的帮助!你给我指明了正确的方向。
https://stackoverflow.com/questions/44091985
复制