我试图使用PHP中的system命令导入mysqldump文件。我就是这么做的-
$command = "F:\System 1.1\server\mysql\bin\mysql.exe -h localhost -P 7188 -u username -ppassword <dbname> < F:\System 1.1\backup.sql";
system($command,$return)$return的值是1。语法不正确吗?另外,还有其他方法可以通过PHP导入完整的数据库吗?
(我给出了mysql.exe的完整路径,因为最终将使用该程序的用户可能没有安装和显示mysql。)
发布于 2011-08-16 14:48:25
一些想法:
。
发布于 2011-08-16 15:57:36
您的文件路径在F:\System 1.1中包含空格,这可能会给PHP带来问题。你应该把它们用下面的引号括起来。作为路径分隔符的双反斜杠可能也是必要的。
$command = "\"F:\System 1.1\server\mysql\bin\mysql.exe\" -h localhost -P 7188 -u username -ppassword <dbname> < \"F:\System 1.1\backup.sql\"";
//---------^^^^---------------------------------------^^^^ Also in the backup.sql path...当PHP执行未引用的命令时,它会看到:
F:\System并失败,因为这是一个无效的命令。
https://stackoverflow.com/questions/7079966
复制相似问题