我不断得到运行时生成的空文件
$command = 'mysqldump --opt -h localhost -u username -p \'password\' dbname > \'backup 2009-04-15 09-57-13.sql\'';
command($command);有人知道这可能是什么原因吗?我的密码中有奇怪的字符,但在连接到数据库时可以正常工作。
我已经运行了exec($command, $return)并输出了$return数组,它正在查找命令。我还用mysqldump > file.sql运行过它,该文件包含
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help因此,该命令看起来是有效的。
发布于 2009-04-15 00:15:49
删除-p和密码之间的空格。如果不起作用,请尝试删除密码中的引号
如果您使用短选项表单(-p),则不能在选项和密码之间留有空格。
但是,可以为-h和-u选项留出空间
发布于 2009-04-15 00:15:42
我相信在-u和实际用户名之间没有空格。
host: localhost user: peter password: pwd会变成:
-hlocalhost -upeter -ppwd发布于 2010-05-24 15:09:24
这就是我所做的-输出是最大的gzip压缩:
<?php exec("/usr/bin/mysqldump --opt --host=MYSQLHOSTNAME --user=MYSQLUSER --password=PASSWORD DATABASENAME | gzip -v -9 >DATABASENAME.". date("Y-m-d_H-i-s") . ".sql.gz");?>https://stackoverflow.com/questions/749803
复制相似问题