mysqldump不能使用PHP,只需要进入命令行

时间:2018-01-11 12:12:37

标签: php mysql sql

我正在尝试用php执行此命令:

system ('mysqldump -u myUser myDbname | mysql -u myUser -A myDbBackupName');

这不会返回错误,但不执行任何操作。 通过命令行在服务器中执行的相同命令完美地工作。 我正在使用.my.cnf,我将用户配置为mysql,mysqldump和client。 我不知道发生了什么。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。将2>& 1放在命令的末尾,强制返回方法exec()或system()的输出,以便于调试。

正确的mysql命令在-p [密码]之间没有空格。事实上,如果你使用档案.my.cnf

,密码是必要的,独立的

像这样:

mysqldump -u user -ppassword myDbName | mysql -u user -ppassword myDbBackupName