在之前的一个问题中,我询问了SQL命令LOAD DATA FILE的使用情况,并且在我使用mysqldump处理数据库备份的回复中,我得到了一点帮助,理解这个功能但是我现在非常困难,试图让它发挥作用。
以下是我的代码,请看看,如果你能看到我出错的地方,你可以解释并显示在哪里吗?我已经不知疲倦地在网上试图找到如何使我的代码工作,但无济于事,
//Database Information
$dbhost = "localhost";
$dbname = "foobar";
$dbuser = "foo";
$dbpass = "bar";
if (isset($_POST['backup'])):
$command = "mysqldump --opt -host=$dbhost --user=$dbuser
--password=$dbpass $dbname > /sql/backup/verypc.sql";
system($command);
endif;
非常感谢任何人提供帮助。
答案 0 :(得分:1)
首先,您必须确保您的托管允许您使用php运行shell命令。要实现这一点,您应该从简单的ls开始,看看它是否显示。
Otherwize,你可以找到一些用php编写的mysql-backup脚本。
答案 1 :(得分:1)
您有-host=$dbhost
而不是--host=$dbhost
。
答案 2 :(得分:0)
使用exec,而不是系统。
另外,考虑使用cronjob。我用它来每小时备份一次数据库:
mysqldump --opt -Q -u [username] -p[password] [username] > /home/[username]/backups/`date --iso-8601`.sql