Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysqldump不产生任何输出_Php_Mysql_Mysqldump - Fatal编程技术网

Php mysqldump不产生任何输出

Php mysqldump不产生任何输出,php,mysql,mysqldump,Php,Mysql,Mysqldump,我需要将整个数据库转储到一个文本文件中,但mysqldump没有输出任何内容。下面是我通过php脚本执行的命令: <?php $_user="root"; $_pass=""; $_db="somedb"; $_host = "localhost"; $filename = "somedb.zip"; $target_fn = "test.txt"; $command = 'c:\xampp\mysql\bin\mysqldump -u'.$_user.'

我需要将整个数据库转储到一个文本文件中,但mysqldump没有输出任何内容。下面是我通过php脚本执行的命令:

<?php
  $_user="root";
  $_pass="";
  $_db="somedb";
  $_host = "localhost";

  $filename = "somedb.zip";
  $target_fn = "test.txt";

  $command = 'c:\xampp\mysql\bin\mysqldump -u'.$_user.' -p'.$_pass.' -  
              h'.$_host." ".$_db.' > test.txt';
   try{
     exec( $command );
   } 
   catch(Exception $e){
     echo $e;
   }
?>
编辑

我在XAMPP堆栈上

编辑 在cmd上运行上述命令后,我意识到它仍然会提示输入密码。可能是命令错误地解释了空密码

$return_var = NULL;
$output = NULL;
$command = "/usr/bin/mysqldump -u mysql-user -h 123.145.167.189 -pmysql-pass database_name > /path-to-export/file.sql";
exec($command, $output, $return_var);
尝试为exec提供另外两个参数


因此,问题在于空白密码的命令语法/结构。以下是空白过程的正确命令:

$command = 'C:\xampp\mysql\bin\mysqldump -u'.$_user.' -h'.$_host." ".$_db.' > test.txt';

使用这些值,您是否证明mysqldump是从shell工作的?我在xampp stackwindows上,这是mysqldump程序所在的位置…您的mysql dumb版本是什么?我怎么知道版本?我不知道为什么这个答案被标记为无用?请解释一下。