gpt4 book ai didi

php - 使用 PHP 对 Windows 7 上的所有数据库进行 mysqldump

转载 作者:行者123 更新时间:2023-11-29 13:55:01 25 4
gpt4 key购买 nike

我试图使用一个小的 PHP 脚本执行 mysqldump 来导出所有数据库,但每次执行代码时都会创建一个空文件。

<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');

$filename='database_backup_'.date('G_a_m_d_y').'.sql';

$result=exec('mysqldump -p123456 -uroot --all-databases --single-transaction > C:\\tmp' . $filename,$output);

if($output==''){
echo("Success");
}
else {
var_dump($output);
}

?>

我尝试print_r $output,但显然即使我的转储失败,它也是空的。我已经使用 mysqldump.exe 手动执行了相同的 mysqldump,效果很好。

通过 passthru 的建议成功了:

passthru('C:\wamp\bin\mysql\mysql5.5.24\bin\mysqldump.exe -uroot -p123456 --all-databases --single-transaction > C:\\tmp' . $filename);

最佳答案

要查看问题所在,请将原始语句更改为以下内容:

$result=exec('mysqldump -p123456 -uroot --all-databases --single-transaction > C:\\tmp' . $filename,$output, $returnVar);

这里的区别是我将 $returnVar 添加为 exec() 函数的第三个参数。该参数将返回执行命令的状态。

现在尝试 print_r($returnVar) 看看它说了什么。

关于php - 使用 PHP 对 Windows 7 上的所有数据库进行 mysqldump,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16001093/

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