【问题标题】:mysqldump not producing any outputmysqldump 没有产生任何输出
【发布时间】:2015-09-25 02:32:48
【问题描述】:

我需要将整个数据库转储到一个文本文件,但 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 上运行上述命令后,我意识到它仍然提示输入密码。可能是空密码是命令错误解释的原因。

【问题讨论】:

  • 使用这些值,您是否证明mysqldump 正在shell 中工作?
  • 我在 xampp 堆栈(windows)上,这是 mysqldump 程序所在的位置...
  • 你的 mysql 哑版本是什么
  • 我怎么知道版本?

标签: php mysql mysqldump


【解决方案1】:

所以问题是空密码的命令语法/结构。以下是空白通行证的正确命令:

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

【讨论】:

    【解决方案2】:
    $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);
    

    尝试再给 2 个参数给 exec

    Reference

    【讨论】:

    • 我不知道为什么这个答案被标记为无用?请解释一下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-27
    • 1970-01-01
    • 2017-02-03
    • 2012-01-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多