mysqldump生成零长度文件

时间:2013-03-10 02:42:10

标签: php mysql mysqldump

我正在使用生成零长度文件的myqldump。我尝试了很多次,但它似乎只输出一个零长度的文件。我不知道为什么。我需要安装什么东西或什么?

  <?
    shell_exec("mysqldump -hlocalhost  -uroot -p  -A> db/ilamdb.sql ");
    echo "complete";
  ?>

1 个答案:

答案 0 :(得分:1)

  1. 提供mysqldump的完整路径
  2. 为用户提供密码(在您的情况下为root)。 离开-p表示以交互方式询问用户密码。如果密码包含以下字符之一,请将密码放入引号中* ? [ < > & ; ! | $
  3. 对于好的衡量标准,请使用--no-defaults选项。在你的情况下你可能不需要这个。
  4. 最后将stderr重定向到stdout,在命令末尾添加2>&1。这样,如果发生错误,您将在文件中收到用于调试目的的错误消息,而不仅仅是空文件。
  5. 因此,调用mysqldump的代码可能如下所示

    $pwd = '*******';
    $cmd = "/usr/local/mysql/bin/mysqldump -hlocalhost -uroot -p'$pwd' -A> db/ilamdb.sql 2>&1";
    shell_exec($cmd);