Mysqldump 在 php 中生成空文件

Mysqldump generate empty file in php

我尝试将我的数据库保存在 PHP 中,但仅在 Shell

中无法正常工作

与shell(效果不错)

mysqldump --user=root --password= --host=localhost site > C:\xamppp\htdocs\site\sql\tests.sql

With php(文件已创建但为空)

system('mysqldump --user=root --password= --host=localhost site > C:\xamppp\htdocs\site\sql\test.sql', $result);

对于 $result 我有 1

我在 Windows 7 上使用 XAMP,我测试了 execsystem 但它们是一样的 谢谢你

$return_var = NULL;
$output = NULL;
$command = "mysqldump -u mysql-user -h your_host -pmysql-pass database_name > /directory_path/file.sql";
exec($command, $output, $return_var);

或者你可以参考这个答案mysqldump via PHP

Use 2>&1

<?php system("mysqldump --user=root --password= --host=localhost site > C:\xamppp\htdocs\site\sql\test.sql 2>&1", $result); ?>