我尝试了Ngu Soon Hui的解决方案,但它确实有效。 mysqldump怎么样?我尝试使用相同的解决方案。
$cmd = $mySQLDir1.' -h '.$mydbserver.' --user='.$username.' --password='.$password.' > "'.$file2.'"';
exec('"'.$cmd.'"',$out ,$retval);
,其中
$mysqlDire1 = $mySQLDir1='"C:\\Web\\WebServer\\mysql\\bin\\mysqldump.exe"';
$file2 = '"C:\\database_backup\\purchase_sales.sql"';
但这会生成包含此内容的文件。
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help
任何帮助将不胜感激。
答案 0 :(得分:2)
您没有指定要备份的数据库。尝试添加一个,如提示所示:
$cmd = $mySQLDir1.' mydatabasename -h '.$mydbserver.' --user='.$username.' --password='.$password.' > "'.$file2.'"';
经过测试和工作。
答案 1 :(得分:0)
在声明$cmd
回显它之后的第一件事,取出输出并将其输入到运行提示或命令提示符中,看看输出是什么。