我一直在运行时生成空文件
$command = 'mysqldump --opt -h localhost -u username -p \'password\' dbname > \'backup 2009-04-15 09-57-13.sql\'';
command($command);
Run Code Online (Sandbox Code Playgroud)
有谁知道这可能导致什么?我的密码中有奇怪的字符,但连接到数据库时工作正常.
我已经运行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
Run Code Online (Sandbox Code Playgroud)
所以看起来命令正在运行.
我相信 -u 和实际用户名之间没有空格。
host: localhost user: peter password: pwd
Run Code Online (Sandbox Code Playgroud)
会成为:
-hlocalhost -upeter -ppwd
Run Code Online (Sandbox Code Playgroud)