我正在使用生成零长度文件的 myqldump。我试了很多次,但似乎它只输出一个零长度的文件。我不知道为什么。我需要安装什么东西吗?
<?
shell_exec("mysqldump -hlocalhost -uroot -p -A> db/ilamdb.sql ");
echo "complete";
?>
-p
意味着以交互方式向用户询问密码。 如果密码包含以下字符之一,请转义或将密码放在引号中* ? [ < > & ; ! | $
--no-defaults
选项。在您的情况下,您可能不需要这个。2>&1
在命令末尾添加的 stdout。这样,如果发生错误,您将在文件中获得用于调试目的的错误消息,而不仅仅是空文件。因此,您要调用的代码mysqldump
可能如下所示
$pwd = '*******';
$cmd = "/usr/local/mysql/bin/mysqldump -hlocalhost -uroot -p'$pwd' -A> db/ilamdb.sql 2>&1";
shell_exec($cmd);